HNHacker News
TopNewBestAskShowJobs

mxavier

312 karma · joined July 1, 2010

submissionscomments
mxavier··on Haskell for Web Developers
When I code in Haskell, the first and most important step I make is to create rich types for the domain I'm working in. If you disambiguate your types, your code becomes more readable and the compiler is a lot better able to help you out when you make a mistake.

For example, rather than having an Invoice with a status field of Text or String, I have a type InvoiceStatus = Paid | Unpaid | Void. From there, you can write a very precise parser that takes exactly what you want and nothing else. When I apply this approach to each component of the thing I need to parse (or do it generically even), I don't really find myself having to munge javascript types into my data structures.

mxavier··on Pebble E-Paper Watch Raises $1M In 28 Hours
I own the original inPulse and the charge lasts about 1 day. That's the main reason why I stopped wearing it. Definitely interested in something I can let go longer with an always-on screen. I'm not a fan of thinking about my watch's charge level.
mxavier··on Milk Inc. to shut down Oink on March 31st
While I'm not disagreeing with this, I wonder if it will impact the users of Milk Inc tools' willingness to participate in future projects. For services which run off of user's submitting content (reviews in the case of Oink), I'd imagine users may become hesitant to contributefor fear of the project (and thus their work) getting shot in the head.

I'm not saying terminating a project that didn't meet expectations is wrong, I'm just curious about the lasting implications.

mxavier··on Haskell web programming (a simple tutorial)
I'm having a hard time understanding the intent behind "You shouldn't need to know Haskell". Do you mean in order to complete the tutorial and understand what Yesod does? That's probably true. Being someone who's been studying and using Haskell in personal projects for the past maybe 10 months or so, Haskell's syntax and fundamental design decisions (while spot on, in my book) are different enough from most programmers' skill sets that I don't think they'll make it very far writing a non-trivial Yesod app without knowing Haskell. I'm fairly proficient/enamored with Haskell now but I'm certain I would have crashed and burned if I got my start trying to learn Haskell from Yesod.

My first dose of Haskell was attempting to write an XMonad config. That turned out to be a frustrating, several hour long ordeal for me that had me write off Haskell as undecipherable, alien hieroglyphics for quite some time after that. I'd urge anyone reading the tutorial who likes what they see to put in the hard time to get a handle on the language, understand what its good for and what it isn't and then return to web programming with it.

mxavier··on Honeybee deaths linked to seed insecticide exposure
There's a 2009 Documentary called Vanishing of the Bees that covers this. It was quite alarming to see the impact it had on beekeepers in the US. If you have netflix, the doc is available for streaming and is well worth the watch.
mxavier··on Louis C.K's email to his Beacon Theater Show customers
Like this email, I've noticed Louis' personality permeates the whole experience. An interesting little tidbit: the password emailed to me after purchasing to access my content didn't work. I clicked the button to reset my password. I received an email with the text:

Apparently you forgot your password? Ok, so here's your new one, stupid:

My generated password was prefixed with "idiot.THENEWPASSWORD". It's little touches like this that I find really nice.

Also, needless to say, I would buy one of his specials in a heartbeat should a similar offer come up in the future. I watched the special last night and it was outrageously funny.

mxavier··on Find His Porn: Evil Website of the Week
This service may serve a purpose for men as an early indicator that their SO has communication issues. I cannot speak for anyone else but I for one would not want to be in a relationship where my SO was spying on me like she was my probation officer.
mxavier··on Scaling Erlang to run on machines with hundreds of thousands of cores
I'm fairly new when it comes to working with Erlang. We've developed an application we use internally for essentially doing distributed, fault-tolerant timers.

I, however, would caution against some of the platitudes you use about it being the future of concurrency. I also think it is kind of silly to imply that a coder isn't "worth their salt" if they aren't learning Erlang. It isn't a panacea. If you read some modern Erlang guides like Learn You Some Erlang, for example, you'll note that a responsible advocate of Erlang will caution against drinking too much kool-aid. Erlang, for example, is admitted as being a poor choice for lots of string manipulation because of the way strings are implemented in the language. I believe that same guide mentions that it may not be the best choice for heavy number crunching.

Developers worth their salt will not just hear the word concurrency and start writing everything in Erlang. It is much better to consider the problem and ensure that the problem domain matches Erlang's particular strengths.

I also want to mention that in my experience, Erlang applications are pure hell to deploy for people who don't have years of OTP deployment under their belts. So much of having a manageable Erlang app depends on the developers being well versed in a lot of subtle, and very easy to get wrong conventions. We actually ended up needing to start a support contract with Erlang Solutions themselves to help us demystify getting a sane deployment process going for our app. This was an expensive endeavor. Yes, it was primarily because we were new to the language, but it also had a lot to do with a lack of community documentation/discussion about deployment procedures. I won't even get into the joy of trying to decipher Erlang's famously cryptic crash reports/stack traces.

tl;dr: Erlang isn't concurrency pixie dust. A developer isn't a failure if they aren't currently learning it, nor are they a success if they just decide to use Erlang for every class of problem. It is an interesting language to work with and solves certain problems very well, others not so well.

mxavier··on Google Reader cutting internal social features, integrating into Google+
I'm sure Google considered this but I hope that by default, my feed subscriptions are shared with nobody in my Google+ circles and that I have to opt those people in. Doing otherwise would be the equivalent of dumping the contents of your browser bookmarks for all your friends to see. There may be some things people subscribe to that they'd prefer others didn't know about.
mxavier··on GitLab - an open source clone of GitHub
Our company gives them money but the main thing is that we have a lot of small private projects that are more like prototypes and will never see the light of day. We are not permitted to open source them and probably wouldn't if we could because they'd be worthless to everyone but us. The pricing plans for additional private repos is pretty steep with github so we had to pay for a crappy repository hosting service to dump all of our second tier projects. GitLab would be pretty neat to allow us to store our second rate stuff on our own servers and the stuff we use every day on github.
mxavier··on If you don’t have pet projects, I don’t think I want you
Maybe I'm misinterpreting. Are there really contracts that say that any code you write, even if it is unrelated to your work and off-hours is the property of the company you work for? If so, that sounds like a horrible arrangement. That would be like a chef making a sandwich for himself at lunch and having to give it to the restaurant where he works instead.
mxavier··on Realistic Skin Rendering in WebGL
I opened the tab and then forgot about it while reading other stories. Scared the shit out of me when I got around to this tab.
mxavier··on Best SSDs For The Money: August 2011
I knew this would happen. I bought a Thinkpad T420s which has a non-standard (or new standard?) 7mm hard drive caddy instead of the much more common 9.5mm. I bought a 64GB Crucial M4 because it could be modded to 7mm and the price was right. I'm happy with the performance. It feels noticeably faster than a standard magnetic drive, but the 64GB is in tier 10 on this comparison. I guess as long as I'm happy with the performance it doesn't really matter. I wish this article was around 2 weeks ago.
mxavier··on Why every programmer should have a Tiddlywiki
http://gitit.net/ uses git as the backend, though you still do your editing in the browser. I don't know if it is possible to edit the files directly, though.
mxavier··on How DuckDuckGo got in Time's best websites
Exactly. I only really lob softball queries at DDG. I use ! to go to the first result on queries I know are going to have the right match first. Everything else I proxy to google through !g. DDG is great but the search quality (or perhaps the size of the data they index) is just not nearly up to par with Google.
mxavier··on Airbnb Victim Speaks Again: Homeless, Scared And Angry
A little OT from the actual story but I find it annoying when TechCrunch and similar sites find a random picture to put near the headline. I suppose the point of this is to attract more eyes to the article, but when the story is about someone getting their home trashed and you show some completely different house that looks like a bulldozer drove through it, I can't help but think you're creating an association that is a best worthless and at worst misleading. Pictures in articles serve a purpose and that purpose certainly isn't to remind me what a trashed house is.
mxavier··on Report proves pirates are great consumers
I expected to see a lot more correlation/causation pedantry show up in an HN post that uses the term "proves" followed by a subjective claim.
mxavier··on Comcast cuts off customer for going over 250GB of legitimate use
Surely you see how there may be a problem when the solution to a local monopoly cutting off service for overuse is to throw more money at the same company with absolutely no guarantee that service won't be terminated again.
mxavier··on Sprint wants to kill bloatware forever
I didn't see anything here that implies it will be retroactive. I wonder if that means people with me who have the 1st gen Evo are stuck with nascar and other such nonsense.
mxavier··on Chromebook
Not so fast on netflix. As far as I know (and I have a vested interest so I try to stay up-to-date), Netflix doesn't work on Linux nor Android because of silverlight's DRM stack not being available on those platforms.

The rest are good but lack of Netflix support has definitely prevented me from purchasing a product in the past. This is not necessarily a problem that Google can fix right now, but hopefully it expedites Netflix' efforts to do so.

mxavier··on Google Music Service
If you were to go for a (really) conservative estimate of 3MB/mp3, that tops out at 7.5GB. I'd be interested in hearing what their pricing would be for more space. I jumped the gun and bought 50gb worth of space on Amazon Cloud Drive. Their player and lack of linux support both suck so if Google can beat them on either front and price, I might switch. At this point I trust Google alot more than Amazon at developing a good software product.
mxavier··on "The 411 Parable": Goog411 vs Bing411 - Make sure you are playing the same game.
I'll play devil's advocate here. Are we sure Microsoft is not doing the same data mining on Bing411 as Google did on Goog411, and haven't dumped it because it is either a valuable service in their eyes or they are not done gleaning what google gleaned from their head start?

I somehow doubt this is the case but I'm not so sure we can assume that it is not.

mxavier··on Scraping the web with Node.io
The article fails to mention this but there's probably more reasons why this might be a good idea besides the fact that using JS selectors on page content is a natural fit. Because everything is asynchronous, I suppose there's probably some concurrency benefits, not allowing a slow-responding server in your list to slow down the processing of the other sites you're scraping.
mxavier··on Microsoft confirms IE10 won't run on Vista, millions of IE9 users shrug
I bet the people who spent good money on a Windows Vista license are feeling really good about Microsoft right now.
mxavier··on Everyone’s To Blame For The Xoom’s Low Sales Numbers
There was a missed opportunity by the author here when blaming Motorola. I can forgive poor advertising because I like to think I'm one of those people who will make a purchase based more on research than something I saw on TV. However, I was flabbergasted that the Xoom was rushed to market so quickly that it had a non-functional SDHC slot and required you to send it in at some later date to get a 4G antenna put in. It is unbelievable that such a large company would release a product that is so clearly unfinished. What I find sad is that I'm sure plenty of non-technical users will miss the memo about the 4G upgrade and will either return the product because the internet connection is slow or even worse, will live with a product that didn't deliver the featureset on the box.

As much as I like to pick at Apple for all of their nonsense, the competition in the tablet space (and in many ways the mobile phone space) should be embarrassed with themselves.

mxavier··on Windows Phone 7 Part Deux - Microsoft respond to developer
He missed an opportunity to make another point here. Surely it isn't easy for a large company to behave like a small one or that they move slowly. However, being a large, seasoned company with all kinds of bureaucracy should at least buy you the ability to set realistic deadlines and meet them. Announcing a critical update to your platform and then failing to deliver it four months late is a small-company mistake, and mistake is being really generous.
mxavier··on Dropbox: The hottest startup you've never heard of
This same line of reasoning came up with the last few Netflix stories to hit HN. Netflix depends on Amazon who runs a competing on-demand video service. The general consensus is that Amazon's divisions are independent enough to not try anything funny. More importantly, Amazon is big enough that they wouldn't risk the publicity fallout of monkeying with the competition's services.
mxavier··on R.I.P. Microsoft Zune. We'll always have the memories...
Tepid interest, apparently. I think the market might be saturated or people might be using their phones instead of portable media players. Everyone I've talked to has had a relatively positive experience with their zune. I have a first gen 30GB model that I got used that's still alive and kicking. I don't purchase music through their store but the Zune was the right price at the right time and I've never really been too concerned about what the cool kids with their iPods thought of my slightly clunky Zune. It plays music, it takes a beating and its cheap.
mxavier··on Alternative operating systems
I had to double check the article publish dates. I don't know who the main audience for this site is but if someone told me these screenshots were of state-of-the-art alternative OSes back in 1999 or earlier, I would have believed it in a second.
mxavier··on GHC 7 is released. with LLVM, improved inliner, improved thread scheduler ...
I'm confused. Their site says GHC 7.01 was released in November 2010. This release is 7.02.
Page 1 of 4Next →