HNHacker News
TopNewBestAskShowJobs

drothlis

720 karma · joined February 15, 2009

https://stb-tester.com/ | https://david.rothlis.net/ | david@rothlis.net
submissionscomments
drothlis··on Smalltalk & Seaside vs. Ruby & Rails
> once you use an IDE that actually IS "integrated" as the acronym suggests, you will never turn back.

If you're unfamiliar with Smalltalk environments and are wondering what this actually means, watch this 3-minute video showcasing a Smalltalk IDE -- the class browser, method finder, and debugger:

http://vimeo.com/27850933

Anything else seems so... primitive by comparison.

Smalltalk's great drawback is over-reliance on the image:

"If your program misbehaves (and they always do) and corrupts the state of the process, things get tedious. Say you have a test that somehow failed to clean up properly. In a conventional setting, you fix the problem with your code, and run the test again. With an image, you have the added burden of cleaning up the mess your program made. [...] In general, Smalltalk makes it hard to [...] separate the application from the IDE." -- http://gbracha.blogspot.com/2009/10/image-problem.html

drothlis··on Joel Spolsky Launches Trello - Organize Anything Together
Have you written up your approach to / experiences with literate programming anywhere?
drothlis··on A Peek at Emacs 24
From the emacs built-in help:

    C-v runs the command scroll-up.
    
    It is bound to C-v, <kp-next>, <next>.
    
    (scroll-up &optional ARG)
    
    Scroll text of selected window upward ARG lines.
    If ARG is omitted or nil, scroll upward by a near full screen.
So C-v scrolls by a screenful; M-1 C-v (which you could bind to a single key if you wish) scrolls by a single line.
drothlis··on Bash Shortcuts For Maximum Productivity
I used to use !$ all the time, but these days I tend to go for M-. which inserts the last argument interactively, and cycles through the last argument of all previous commands (but you don't get modifiers like !$:h).

http://www.gnu.org/s/bash/manual/html_node/Commands-For-Hist...

M-C-y (yank-nth-arg) works similarly for the first argument of the previous command, but without cycling through all previous commands.

After the more complex modifiers like !$:p, :e, :s/old/new/, etc, before hitting Return I often use M-C-e (shell-expand-line) just to check I got it right.

http://www.gnu.org/s/bash/manual/html_node/Miscellaneous-Com...

drothlis··on More information on Google's new web language, Dash
Choice of syntax affects how easy it will be to create tools for the language (IDE syntax highlighting, code browsing/navigation, automated refactoring, etc). There is still plenty of room (and need!) for improvement, for innovation. At the other extreme, imagine a world where every language used C++'s syntax.
drothlis··on Google to announce "new programming language for structured web programming"
Maybe it's about more than just the language. Have you actually seen a Smalltalk development environment? (e.g. http://vimeo.com/27850933 ).
drothlis··on Design Philosophies of Developer Tools
The stability of most unix tools' interfaces is wonderful. With the rise of tools like bash-completion, even the output of a tool's '--help' option[1] or debug output[2] needs to be stable.

[1] http://anonscm.debian.org/gitweb/?p=bash-completion/bash-com...

[2] http://david.rothlis.net/tools/case_studies/#bash_completion

drothlis··on Arq 2 (OS X backup-to-S3 software) has been released.
Arq does incremental backups... but does it do incremental restores? i.e. if I have already restored the backup to another computer, can I later fetch just what has changed? This is the only feature missing from duplicity[1] to make it perfect.

[1] http://duplicity.nongnu.org/

drothlis··on Command Line Feedback from RVM and Git
Git's own bash/zsh completion support comes with utilities for the prompt. For details see:

http://git.kernel.org/?p=git/git.git;a=blob;f=contrib/comple...

drothlis··on Exceptions are Bad
Now, if you REALLY want to move forward but not back with composability of error handling, what's needed is some mechanism that the executive level gets 'hints' that would help it deal with the error.

I like the idea (was it from Code Complete? Can't find the reference now) that your exception class hierarchy should be cross-functional. i.e. instead of the Logger throwing instances of LoggerException, the DB code throwing DBExceptions, etc, your exception hierarchy would reflect the concerns you mention: Transient error vs. bad data etc.

drothlis··on Ask HN: How to learn to give clear, descriptive names to class, methods etc
Read "Code Complete".
drothlis··on Working with git? These aliases will save you hours
Install bash_completion (yum/port install bash_completion).

Then in your bash .profile: source /etc/bash_completion

drothlis··on Slightly More Advanced Git techniques
Last time I looked into 'git notes' it wouldn't preserve the notes attached to a commit when you amend / rebase / cherry-pick the commit. It seems that git now supports this! From the git-notes manpage:

  notes.rewrite.<command>
    When rewriting commits with <command> (currently amend or rebase),
    if this variable is false, git will not copy notes from the original
    to the rewritten commit. Defaults to true.
drothlis··on How html5-boilerplate helped drastically improving our website performance
The transfer time improved by 0.6s (first view) and 0.2s (subsequent view), but the total load time worsened by 9 seconds (first view) and 3 seconds (subsequent view).

What am I missing?

drothlis··on Cambridge (UK) Startup Weekend, 11–13th March
What about for people who don't have a specific idea (or none small enough to reasonably start on in 54 hours) but want to hang out and help on someone else's idea?
drothlis··on And so I'm giving up the Mozilla project - Jamie Zawinski (1999)
No project needs to use recursive make.

"Recursive make considered harmful": http://miller.emu.id.au/pmiller/books/rmch/

drothlis··on [dead]
Maybe make the default/hint text for the input say "Band" instead of "Group" -- considering all I see when I visit the website is "RELA - Group - User - Pass" at least this would give me an inkling that it's for musical bands.
drothlis··on Ask HN: experiences with Lasik eye surgery (programmers especially)?
I had Lasik on both eyes in 2005. Before that I had ~6 diopter short-sightedness in both eyes, with slight astigmatism. The difference is magical and 5 years later it still amazes me. At a check-up one year later I had 20/20 vision, and haven't noticed any degradation since then. I never particularly noticed the halo effect at night. I did have very dry eyes for a year or so, but nothing that artificial tears couldn't fix.

That's not to say the procedure is without risks; but it worked out very well for me.

The reason for the dry eyes, I was told, is that the cut in the cornea kills some nerves, reducing sensitivity, so you don't _know_ your eyes are dry (and hence don't blink enough) until they are _really_ dry. The nerves eventually grow back.

I stare at computer screens for 12+ hours a day, and I do get dry and irritated eyes -- but I think that has more to do with the staring at computer screens, and not blinking enough, than the Lasik.

I had my operation done in Colombia, a country with strong expertise in Lasik (the microkeratome, the instrument used to cut a flap in the cornea, was developed in Colombia). At my one-year-post-op checkup (in New Zealand) the doctor recognized the name of my Colombian surgeon from journal articles. At the time the operation cost US$1000 (for both eyes), less than 20% of what it would have cost back home, and probably better quality.

drothlis··on Ask HN: experiences with Lasik eye surgery (programmers especially)?
Yes. When I had mine done, it took 10 minutes at most, and there were 15-20 other patients scheduled for the same day.
drothlis··on In praise of Go or "Why I moved from Python and C++ to Go"
To answer my own question: No, it doesn't.
drothlis··on In praise of Go or "Why I moved from Python and C++ to Go"
Doesn't the Go compiler flag as an error the fact that there's no "{" after the "if(blah())"? (On the same line, I mean.)
drothlis··on Ask HN: UK parcel delivery service prime for disruption?
Yes, very frustrating. HDNL has only successfully delivered me 1 package out of 3 this year. Have had no trouble with Royal Mail. I no longer use Amazon, until they offer the choice not to use HDNL.

Amazon's statement on the matter: "Currently, we do not have the ability to assign certain carriers to a specific customer or address but will continue working with all of our carriers to drive improvements for our customers."

drothlis··on James Cameron on “Avatar 2″ and the Impending Environmental Crisis
That's a rather provocative interpretation of what I posted. I was merely pointing out that the birds thing is a relatively small issue, and if you really care that much about them you'll have to sacrifice much of the modern lifestyle.

For what it's worth, the book I quoted from (link in my previous comment) is (in my interpretation) fairly skeptical of wind power. I highly recommend it: It looks at the issues in a balanced manner, with extensive figures and calculations, and without resorting to sensationalist language like "it's OK to kill birds", or putting sarcastic quotes around "saving the planet" to imply naïvety of anyone who dares to disagree.

drothlis··on James Cameron on “Avatar 2″ and the Impending Environmental Crisis
Do windmills kill “huge numbers” of birds? Wind farms recently got adverse publicity from Norway, where the wind turbines on Smola, a set of islands off the north-west coast, killed 9 white-tailed eagles in 10 months. I share the concern of BirdLife International for the welfare of rare birds. But I think, as always, it’s important to do the numbers. It’s been estimated that 30 000 birds per year are killed by wind turbines in Denmark, where windmills generate 9% of the electricity. Horror! Ban windmills! We also learn, moreover, that traffic kills one million birds per year in Denmark. Thirty-times-greater horror! Thirty-times-greater incentive to ban cars! And in Britain, 55 million birds per year are killed by cats.

--David MacKay, "Sustainable Energy -- without the hot air".

http://www.inference.phy.cam.ac.uk/withouthotair/c10/page_63...

drothlis··on Ask HN: Who Is Hiring? (October 2010 Edition)
I interviewed with these guys a while back and the interview was, dare I say it, fun. :-)
drothlis··on Awesome open-source profiles, Maori
Do we have to keep the "Design from Kiwi Grove" footer?
drothlis··on Dijkstra on the cruelty of really teaching computing science (1988)
In a similar vein is Elements of Programming by Alexander Stepanov (designer of the C++ STL) and Paul McJones: http://www.elementsofprogramming.com/book.html
drothlis··on Why aren't you using git-flow?
Yes, you can create a new branch from any tag (or indeed any commit).
drothlis··on Can we stop the language bashing please ?
I love the great despisers, for they are the great venerators and arrows of longing for the other bank.

--Nietzsche (Thus spoke Zarathustra)

drothlis··on In-browser mini IDE and Programming Language
Seaside (Smalltalk web framework) provides something similar to this, where you can access the Smalltalk browser (i.e. IDE & Debugger) directly in the web browser. Whether or not you'd actually develop this way, is another question.

Unfortunately I cannot find a running example openly available on the web, probably because you could easily crash the server if you wanted to.

← PreviousPage 8 of 9Next →