HNHacker News
TopNewBestAskShowJobs

HardyLeung

1,758 karma · joined September 5, 2010

Hardy Leung is the creator of Tagxedo (http://www.tagxedo.com) Twitter: @tagxedo
submissionscomments
HardyLeung··on Google shutting down Picnik
Wow! Amazing! So what's the real alternative to online image editing for the mass? Of course there are Pixlr, Sumopaint, Aviary, Photoshop Express, but each targets a somewhat different audience than Picnik. I know the fact that Picnik is Flash-based is inconsistent with Google's strategy, and that with Flash going nowhere, Picnik is unlikely to help Google anywhere. But still... there are tons of moms and pops who use Picnik.

Question: Is there room for a new Picnik?

Edit: hmm, the Google+ version of Picnik (scaled down) is still Flash-based. So this is most likely part of the "Drive Traffic to Google+ At All Cost!" strategy.

HardyLeung··on Show HN: Skimling - A Platform to Help Kids Improve Their Writing
This is a nice idea. However, I would suggest a better name. Skimling is derived from the word "skim", and "skim over" means to READ SUPERFICIALLY. This is not a good message to prospective students.

You need to think harder about quality control. A simple email-based dispute process is a start, but you need more. How about teacher rating? Teacher credentials, etc.

HardyLeung··on If Google had the guts to pull out of China, why not threaten to pull out of US?
If they do that, the stock price of Google will plunge, and the CEO and directors of Google will be sued to oblivion. The vacuum created by a Google pullout will be happily filled by other tech companies (Apple, Amazon, Microsoft, Facebook) who, with less suicidal impulse, would be more than thrilled with such opportunities, even doing so with a straight face of "doing what's the best for our people". What a huge price to pay for "sending a message to Congress"...
HardyLeung··on SOPA Opponents May Go Nuclear
So this is, uh, "fight terror with terror"?
HardyLeung··on Revisiting 2011 in 365 HN stories
Try Tagxedo http://www.tagxedo.com (which I wrote).

I created a better one (based on pg's essay) a while back: http://www.tagxedo.com/shop/y-combinator

HardyLeung··on Revisiting 2011 in 365 HN stories
Here's a word cloud of the 365 HN stories (in the shape of the HN logo). http://i.imgur.com/AqmeK.png
HardyLeung··on Show HN: SHA1 Checksum Large Files with HTML5 Typed Arrays and Web Workers
I think this is a fair comparison and the truth (that many cannot swallow) is that Javascript is simply too slow for non-trivial computations. All these talks about Javascript finally catching up in speed to native, and now a slightly non-trivial algorithm and Javascript falls flat in its face. I got similar result to pygorex in my run, and the Javascript implementation is indeed 60X slower than native.

Now compare that to HashSum, a a Silverlight-based implementation of the SHA-1 (I verified that it generates the same result), I clocked it and it is 20X faster than the Javascript implementation, and ~3X slower than native. Try it at http://www.hashsum.com (I wrote it; Silverlight required; sorry about the ad/layout, it was an "exercise" a while back).

So HTML5/Javascript is the future, and the future does not include Flash/Silverlight. Perhaps. But this experiment shows that Javascript is clearly way too slow compared to native or plugin. You could argue that the plugin-based scenario is going out of favor. Politics, competition, distribution, etc, are all valid reasons. But "Javascript is now just as fast" isn't one, because it is not. Those who are gung-ho about how fast Javascript is needs to write their own SHA-1 implementation that beats http://www.hashsum.com ... or at least not be blown away by it.

HardyLeung··on Ask HN: Is it improper to invite ex-coworkers to join your startup?
This is not a problem with "non-compete" per se, but with use of confidential/proprietary information such as who's employed, what's the org chart. You have a much better case if the ex-colleague publicly shares his contact information, say on Facebook or Twitter or LinkedIn. Otherwise, your ex-boss could make the argument that you "stole" or misappropriate company confidential information. Yes it could be a very weak case but I have seen such threats being made. The etiquette is to not actively seek ex-coworkers for say at least one year. On the other hand, if you drop hints and the ex-coworker initiated the conversation about joining you, then you're fine. That's my take (not a lawyer).

Like the other commenter said, you did a dis-service to yourself by notifying your ex-boss, especially given your wording (face-palm).

HardyLeung··on RIP, Dennis Ritchie, Father of Unix and C
I didn't think it was appropriate to turn this into a revenue opportunity so I didn't offer that option. In fact, in the blog article, I intentionally took out the standard "tagxedo.com" attribution text in the image so this is a pure tribute instead of an advertisement.

However, I was thinking of making a different kind of tribute, which is to allow you to turn your own C/C++/C#/ObjC code into a word cloud artwork in the shape of the blue "C", and make a T-shirt/mug/bag out of it (via Zazzle). Of course you can already do that if you know how to use Tagxedo, but I presume most people don't. Stay tuned if you are interested.

HardyLeung··on Rob Pike: Dennis Ritchie has died
Let's not compare the two legends. They made their own marks in vastly different ways. Both magnificent. I love them both. RIP.
HardyLeung··on Photoshop 'unblur' leaves MAX audience gasping for air
I doubt it. Blind deconvolution is hard. I think they may use something like super resolution where multiple blurred pictures can be used to recreate a less blury picture (and this is significantly easier to do than blind deconvolution).
HardyLeung··on My apology and why the tech world is awesome
I agree. This is really a damage control to his own reputation. I don't find the apology sincere at all, given the extent and duration of his dishonesty.
HardyLeung··on Introducing Amazon Silk
The connectivity between the server and client side of Fire seems to be quite custom so it is unlikely a simple port. Amazon also mentioned that this is exclusive to Fire and made no mentioning of plan to expand Fire. If they do plan to expand Fire to other platforms in the future, I'd bet they mention it somewhere.
HardyLeung··on Browser Market Pollution: IE[x] is the new IE6
When I first read that there are 76 browsers to support, I was thinking... Hmm, yeah this versioning thing is going out of hand. But it was Chrome + FF + Opera + Safari + 72 versions of IE. Seriously? Projecting all the way to IE20 (2022) with a compatibility mode between any two versions of IE?
HardyLeung··on How to Rock an Algorithms Interview
I agree with jchonphoenix and groby_b. I'm sure there are a lot of great self-taught genius who don't have the formal training but does a much better job than most, but there are orders of magnitude more in the camp of "half-taught" mediocre programmers, with shiny formal training, that can easily be filtered out using this approach.
HardyLeung··on Drawing Machine Using Arduino, Processing, a Sharpie, and String
I love it! This is art + algorithm + engineering + craftmanship.
HardyLeung··on Show HN: Write a sort, watch it go
The quicksort implementation is incorrect. The code simply picking the left-most element as the pivot, and as a result it becomes pathologically slow for nearly-sorted array -- for example, run bubblesort then quicksort, or run quicksort twice -- not to mention potential stack overflow problem due to O(N) recursive call.
HardyLeung··on Neutrinos Faster Than Light, or FPGA artifacts?
I understand you don't want to change because it does invalidate a big portion of your article. But by dancing around the problem, instead of addressing it, you did weaken the trustworthiness of your article, and make it sound more of a witch hunt (read: chasing idea without much evidence).

You have two points that I think are reasonable to raise: (1) is there a mistake (intentional or not) in the assumed margin of error in the measuring equipment? (2) is the DRAM caching behavior taken into consideration? Neither of these two points have anything to do with FPGA per se. Now by including the enchilada word "FPGA platform" into the fray (whereas it was clearly not the intention at the beginning), I feel like you are making things up as you go, which is unfortunate since part of your argument is valid.

HardyLeung··on Neutrinos Faster Than Light, or FPGA artifacts?
If so, I suggest you change the title to "Neutrinos Faster Than Light, or DRAM artifacts?"
HardyLeung··on Neutrinos Faster Than Light, or FPGA artifacts?
The author assumes that FPGA works in a way similar to CPU, and makes various assertion. But the way it works is that it implements a logic/circuitry except that such logic/circuitry was specified by some bits in the memory (hence the word "programmable"). The logic stays unchanged and all bits in the memory that specifies the logic needs to be available at any given time, so the clock cycle is rather deterministic and there is no such thing as "caching" the bits that describe the logic. Granted, FPGA does interface with other components such as external DRAM so technically it could be affected by some caching behavior there, but it is highly unlikely that caching plays as big of a role as would be if it is run by a CPU.
HardyLeung··on Neutrinos Faster Than Light, or FPGA artifacts?
Firstly, if this FPGA-based system is using DRAM and implements caching, results may vary due to a single variable or data structured being in a cache line or not, which may or may not delay a code path by up to 10-100 ns (typical DRAM latency). This discrepancy may never be discovered in tests because the access patterns by which an FPGA (or CPU) decides to cache data are very dependent on the state of the system.

Clearly, the author did not know what he is talking about.

HardyLeung··on C++98 Support Costs Extra (or why we should switch to C++11 now)
I used C++ for years, and then switched to C#, and recently switched back to C++ in my new company (choice of language reflects only the nature of the software we develop, not language superiority). Just yesterday I was evaluating the new features of C++11, and I was pleasantly surprised by (1) the new language features, and (2) the extent of support already by existing compilers (gcc 4.4 and VC++ 2010).

I can see that we'll immediately benefit from a few improvements, such as auto variable, lambda support, standard support for unique/shared/weak_ptr. Even old school C++ users who have no interest in fancy new idioms would benefit from these "syntactic sugar" features found in other modern languages. There are a lot more that I'm still exploring, but so far I like what I saw.

Also these new features just work on the compilers. Given how long the standard process has been, a lot of the features were already baked in. Modern g++ and VC++2010 both have very good support. I listened to a BUILD presentation on C++ and the Microsoft folks are very committed to full C++11 compliance in VS11 (next version of Visual Studio), but AFAIK, VS2010 is already quite capable.

So, I agree, if you have a choice, switch NOW.

HardyLeung··on Launching Google Wallet on Sprint and working with Visa, AmEx and Discover
I think so. According to http://www.google.com/wallet/privacy.html

Transaction information - When you use Google Wallet to conduct a transaction, information regarding the transaction may be stored in the Google Wallet Application. We may collect information about these transactions from the Google Wallet Application. We also collect transaction data from your use of the Google Wallet Service. For example, if you use the Google Wallet Application to make a purchase at a merchant or download a merchant coupon, we may obtain information regarding that transaction from the Wallet Application, from the merchant and/or a partner, as applicable. The information may include the date and time of the purchase, the store location, the amount of the purchase, and the offer associated with the transaction.

Information about your use of Google Wallet - We may collect information about your interaction with the Google Wallet Service and the Google Wallet Application. This may include, for example, data on number of offers saved, payment attempts, and provisioning activity. Using added services may require your opt-in consent for Google Wallet to offer the functionality. For example, you may be offered the opportunity to opt-in to a service whereby Wallet would present offers to you based on your transaction activity through Wallet.

HardyLeung··on Show HN: Calculate MD5, SHA-1 in your browser using HTML5 and WebWorkers
Try http://www.hashsum.com

It's a Silverlight application I wrote years ago (as a warmup) and it does MD5, SHA1, SHA256, etc. and it is much faster than any Javascript or Flash implementation I've ever seen, including this one.

Apology for the very poor Google adsense placement and UI. Yeah it is embarrassing. It was my first introduction to web programming, Google Adsense, and UI, and I've moved on from it long ago. Needless to say I have learned a lot since then.

Hashsum can handle much bigger files than 10MB. In fact, for a file that small, you won't even notice that it did anything. Try something bigger, like a DVD-sized ISO (4.7GB) which will take about 1 or 2 minutes. All computation is done on the client side.

Anyone who claims Javascript is "as fast as C/C++" should at least try to beat Hashsum, which is only C# based.

Sadly, Microsoft is putting an end to this amazing technology, but that's another story.

HardyLeung··on Microsoft has Abandoned Silverlight and All Other Plugins
You are correct. Web-based Silverlight application does not run on WP7. You can (rather easily in some cases) develop a WP7 app with the same codebase as a Silverlight app though.
HardyLeung··on Microsoft has Abandoned Silverlight and All Other Plugins
So... I gather that you are mostly (but violently) agreeing with me? I said there was a 3-way war between Silverlight, Flash, and web app. At the end, Steve Jobs made the call that they all suck and went with native app. He could have sticked with Flash or web (and that was the original plan), but he went ahead with native, a brilliant move in hindsight. Everyone went "what!", "how dare you!" and then "ooh, ahh", and the rest is history.
HardyLeung··on WinRT demystified
Wow, very well written. Thanks Miguel!
HardyLeung··on Microsoft has Abandoned Silverlight and All Other Plugins
I'm afraid that's really not an option if you want to target all Windows 8 devices, as (I believe) many new Windows 8 devices would be Metro UI only. The Microsoft folks already use the word "legacy" with the desktop UI.

In other words, Microsoft means to say "please use Metro, but if you have legacy code don't be angry with us, 'cuz you have the desktop UI option... but not on all devices"

HardyLeung··on Microsoft has Abandoned Silverlight and All Other Plugins
I agree with you. I simply quoted Dean H.
HardyLeung··on Microsoft has Abandoned Silverlight and All Other Plugins
I see the current move more of a defensive move (vs. Apple/Google) than an offensive one (vs. Adobe). Microsoft did not and will not need to kill Adobe's Flash. Steve Jobs already did.
← PreviousPage 3 of 8Next →