HNHacker News
TopNewBestAskShowJobs

rmaccloy

284 karma · joined November 10, 2008

https://robert.maccloy.com
submissionscomments
rmaccloy··on Facebook Chat supports Jabber now
Most people who use FB chat are probably going through the FB site. Dealing with authorization/privacy/spam/abuse for federated users would be a pretty difficult UI/support challenge since it's not integrated with FB's existing friend/profile privacy concepts.
rmaccloy··on Google Voice for iPhone and Palm WebOS
These dudes have been doing something similar: http://voicecentral.riverturn.com/
rmaccloy··on Why I left Microsoft
Then they should work somewhere they can do that. Most likely that's a small company or a startup.
rmaccloy··on Version Control Operating System
Sounds like a combination of FS-level VC (implemented several times) and GoboLinux or Zero-Install (probably more Zero-Install.)
rmaccloy··on Crunchpad renamed "JooJoo" will cost $499 on sale Dec. 11
No, it didn't: http://www.snopes.com/business/misxlate/nova.asp
rmaccloy··on PPK: "Apple is not evil. iPhone developers are stupid."
touchmove, apparently: http://www.sitepen.com/blog/2008/07/10/touching-and-gesturin...
rmaccloy··on Why "ls *.c" is at least dumb, and possibly dangerous
In this case, if you're not an expert with bash, a good rule of thumb would be to pipe your glob-expanded list of junk into perl -nle 'print' (or echo, or... etc) before running something destructive.

Every time. Until you're an expert.

rmaccloy··on Why "ls *.c" is at least dumb, and possibly dangerous
Filenames can contain plenty of happy stuff.

$> touch -- --

$> rm --

usage: rm [-f | -i] [-dPRrvW] file ... unlink file

$> rm -- --

$> touch \

$> touch \\ \ \ . \-

favorites of malware authors everywhere.

rmaccloy··on Homebrew is a new package management system for OS X based on git + ruby
Well, it looks like the entire footprint (Ruby LOC) on github is smaller than port.tcl in MacPorts, so I imagine it seemed more approachable.
rmaccloy··on Business Lessons I Learned This Year
I completely disagree (with the article) when it comes to startup staffing. There are a few cases where having a domain expert is necessary (e.g. if you're writing, say, a new database system or doing realtime software, or if you're selling into a specific market where connections are necessary) but for most startups you're way better off having someone who's a decent programmer but also a competent sysadmin, pretty good with customers, or decent contract negotiator. An early stage startup probably won't even know what to specialize _in_.

Better yet is having someone who's a fast learner and can pick any/all of the above up as needed.

rmaccloy··on [dead]
Looking at http://net2apps.com/Product.aspx, they obviously were directly copying some of your graphics/design at one point. It looks like they've moved away somewhat.

You probably have a case, but I'm skeptical you'd recoup the cost of prosecuting it (in legal fees and in distracting yourself from executing.) Best case scenario is that they decide it's too much of a hassle and fold up shop; if they decide to fight they could change the infringing aspects and still compete with the same basic idea.

I doubt any company that stoops to this sort of thing is capable of out-executing you, so if I were you I would focus on doing your thing and let it sort itself out.

rmaccloy··on Scala as long-term replacement for Java
Well, Groovy has never been "sexy" (in a CS sense) in the way Scala or Clojure are perceived to be.

Despite that (or perhaps because of it) my experience has indicated it's in wider use than either, and it has some enterprise-y backing (SpringSource) so I expect it's not going away.

Both Scala and Clojure are attracting people who weren't originally on the JVM though, which (again anecdotally) I don't think you can say of Groovy.

rmaccloy··on No to SQL? Anti-database movement gains steam
This article is really terrible, and it's sad because most of the pieces of software discussed are at least interesting. Several are indispensable to anybody in the business of dealing with PB-scale data. (I'm pretty sure Hadoop is seeing healthy enterprise adoption.)

That said, I think that calling the whole event NoSQL was kind of asking for it; of course people are going to try to squeeze some drama out of that stone. (I would have gone to the meetup anyway, though, if I hadn't already been booked.)

rmaccloy··on No to SQL? Anti-database movement gains steam
If you anticipate having to write a report, obviously you should use the right tool. If you don't, use what's simple and gets the job done. It's not incredibly hard to switch later.

On the low-end, administration for MySQL is certainly not easy; for an app you build in a day or two on Rails or Django or Sinatra (or as a CLI tool for that matter) you can easily spend more time doing sysadmin work to provision, configure and maintain MySQL than you do writing software. (MySQL shared hosting isn't everywhere.) There are plenty of throwaway webapps out there that just aren't worth setting up a database server for.

On the high end, it's not a matter of what's easy; it's a matter of what's possible.

These are different use cases, and there are different software packages being advocated for them. No one who needs a disk-backed hash table is using Hypertable, and no one who needs massively parallel analytical capability is using Tokyo Cabinet. And no one's advocating reconsidering RDBMS use as a whole; just RDBMS use as the default choice.

rmaccloy··on No to SQL? Anti-database movement gains steam
Indeed, "kids" (by which I assume you mean "assembly-line CS grads") these days are pretty much using Hibernate, ActiveRecord or (I guess?) LINQ. This is a good thing: The O/R mismatch exists. For good programmers ORMs are more productive in most cases (and you can write raw SQL for the exceptions); bad programmers have never gotten the relational model (and there's plenty of legacy code to prove it.)

However, the discussion about "kids" is a total red herring, because I'm pretty sure all of the people involved in talking up Tokyo Cabinet, memcachedb, Couch etc on one end and Cassandra, Hypertable or HTable on the other are fully aware of the difference between a class and a table. The truly clueless don't even know the discussion is happening.

The object/document database revival circa 2009 is about three things:

A. People are already using object-based access for almost everything, so if they're not using relational features it's trivial to drop in an object store and get better performance/less overhead.

B. On the low-end, sometimes a relational database is too much overhead -- if not in performance, in administration. (SQLite is cheap, sure, but sometimes you want just a disk-backed hash table.)

C. On the high-volume-data-analytics-end, RDBMSs don't perform well enough- unless you shell out serious cash for Oracle or Greenplum, Aster Data, Teradata, etc, and even then they still can't handle the volumes MapReduce and Bigtable-alikes can.

rmaccloy··on [dead]
Bleh. This seems like yet another article that starts out with a basic premise of "oh hey, programmers are special and have bad social skills because they're rationally-thinking ubermensch". Spare me.
rmaccloy··on [dead]
I disagree with the article too (and don't think it's well-argued), but...

Stating your position in firm (i.e. "conclusive") terms is generally an advisable practice. The reader can judge the merits of a position for themselves, and counter it if necessary; using wishy-washy language or the passive voice doesn't help anything.

rmaccloy··on Sinatra clone in Scala
Awesome. I actually fired up Sinatra on JRuby for a micro-app that needs to talk to some Java stuff last week. All of the existing stuff in Scala was way too heavy for the purpose. (Clojure/compojure has comparable overhead to Sinatra assuming you're familiar with Clojure, but it was untenable in this particular circumstance.)

At least half the magic of Sinatra is that you can write a single Ruby script, exec it and not have to fool around with build/generate/scaffold script or web server configuration to get something useful. It seems like you're pretty close, given that Java has no standard dependency retrieval system.

rmaccloy··on Setting up a Clojure dev environment with Emacs and Slime
(setq custom-file (expand-file-name "~/.emacs.d/custom.el"))
rmaccloy··on Ask HN: best languages to learn as a newcomer
Indeed. (I mentioned Fortran in one of my replies above.) As far as I know, Fortran isn't used much for new development projects, though; I hear more about using the C interfaces to LAPACK or whatnot even in very crunchy (e.g. genome) apps. Far from a complete survey, I could be wrong. :)
rmaccloy··on Ask HN: best languages to learn as a newcomer
Any of the "academic" languages (Haskell, ML, Lispen, etc) are probably more likely to be found in math/physics-heavy development than in general development shops, but C/C++ is probably the standard (for fast-math libraries and realtime work) - you may see old fortran for some numeric stuff, and forth for some embedded work. Java is pretty rare, AFAIK.

I think HN is not the best place to ask about "languages to learn to get a job", though.

rmaccloy··on Ask HN: best languages to learn as a newcomer
Somebody mentioned Clojure, which is a great language but has some baggage.

If she's coming from a rigorous background, I highly suggest Scheme and the book Structure and Interpretation of Computer Programs (SICP: http://mitpress.mit.edu/sicp/.) For some people using a language with more batteries (and thus instant gratification) is better to learn programming, I think, but for learning to think about computation I think Scheme is pretty hard to beat.

Scientific programming might mean C/C++ (that's where the fast math libs are, to be sure), but it might mean Matlab or Forth or lots of R, who knows.

rmaccloy··on C++ Frequently Questioned Answers
I don't have a dog in this fight, but a major thesis of the article is that this is effectively not true for C++ (vs C) because the language is so complicated (thus the implementations so inconsistent/subtly incorrect) that it's incredibly difficult to determine exactly what the compiler is going to do with your input (or conversely, determine what in your input caused a given error in your object code.)
rmaccloy··on C++ Frequently Questioned Answers
I don't think your first paragraph follows (I think you can certainly contest every assertion in favor of a position without being illogical), although I agree the style is usually unproductive. I'd rather not get into debating it here, though.

The 'humor' I was referring to wasn't in the article (which is pretty bland) but in the fact that hey, this fits the stereotypical image of a programmer: slightly OCD (nitpicky) and lacking social grace. You'd think we'd be used to it :)

rmaccloy··on C++ Frequently Questioned Answers
This is both a bad argument and kind of lacking a sense of humor, since programmers do this (point by point rebuttals) all the time (see: every popular thread on the LKML, ever)
rmaccloy··on C++ Frequently Questioned Answers
Also worth reading (edit: if you've got an hour to kill and care about the subject): http://groups.google.com/group/comp.lang.c++.moderated/brows...

The author defends his position pretty coherently and civilly; you can disagree with his conclusions but calling him a troll or an idiot is certainly not warranted.

rmaccloy··on Axum - A new parallel programming language from Microsoft
Sure, having used (and appreciated) Erlang I agree it would be interesting (I'm not a .NET user either or likely to become one.) I'm not surprised they omitted it, though I won't speculate why.

I just think it's worth reinforcing that there are interesting actor systems other than Erlang, and that some of the people at MSR deserve some credit in the area.

rmaccloy··on Axum - A new parallel programming language from Microsoft
I'd bet this originated from MS Research, who have plenty of people who have worked on/invented actor systems predating Erlang.
rmaccloy··on Clojure 1.0 Released
It varies; you'll want to know quite a bit of Java for Scala and Groovy but less so for Clojure, in my opinion. Clojure has a quite distinct flavor and you see things like ring being used instead of servlets directly in compojure, etc. It'll be interesting to see how much of the standard Java toolkit gets reinvented due to distaste for the Java-ness of some of the stack (which isn't necessarily a bad thing.)

Practically speaking, I think you'll need to be at least a competent Java programmer for the next few years if you don't plan on reimplementing a lot of bits that are in the extended Java stack.

rmaccloy··on Ask HN: Any tips for living cheaply in SF?
I moved here when I was 18 (in 2006) with $1500 in the bank (and no parents to fall back on.) It's tough but doable. I ended up taking a job with an existing startup, but at the time my first priority was being able to eat :)

If I were you, I would not move here to do the solo founder thing without having plenty of connections; you need a good support network (which will hook you up with contract gigs too.) Bring a co-founder or hook up with some people who are already here and can introduce you.

That said, just being young and having the balls to move out here and give it a shot will open doors for you. Network aggressively, who knows?

As far as tips go: You can get a room for $500-$700 a month with varying levels of sketchiness; there are enough hacker houses around that you might find something helpful if you trawl CL long enough. Food is a matter of how gnarly you're willing to get :)

Don't bring your car and don't bring a bunch of gear; parking will cost you upwards of $150/mo and it's never included, and gearwise there's a non-trivial possibility you'll need to move fast if you're doing a cheap sublet or hosteling it.

← PreviousPage 2 of 4Next →