HNHacker News
TopNewBestAskShowJobs

PuerkitoBio

241 karma · joined July 31, 2011

submissionscomments
PuerkitoBio··on Introducing agora: a dynamic, embeddable programming language built with Go
That's fine, I know it can't please everyone, but as mentioned in the docs and the article, this is more about Lua-like semantics with a syntax very close to Go than Java. There are no exceptions per se, there are runtime errors returned to the Go host, and a protected mode using `recover()`.

The preamble before `if` is mainly because the variables are function-scoped anyway, but again, a lot of things may change, this is the very first step in a long iteration process, and the feedback I'm getting today from the various forums will help a lot in knowing how to steer the ship.

PuerkitoBio··on Introducing agora: a dynamic, embeddable programming language built with Go
Hi, author here. Actually, Lua and Javascript were more of an influence than PHP (I don't know PHP much). But type checking was an obvious thing to remove since I'm aiming for a dynamically-typed language, and I do want sufficiently different (and looser) constructs than Go so that it can find its niche, otherwise what's the point?

I'm definitely not done, and multiple return values are one of the points I'm not fully decided yet (this is a v0.1 after all). Interaction with channels are on the roadmap, and concurrency can be done in the Go host to run different execution contexts.

PuerkitoBio··on Introducing agora: a dynamic, embeddable programming language built with Go
Thanks, it's a very early "vision", but I'm happy with the way things are going!
PuerkitoBio··on DockerUI - A web interface for Docker
This looks very nice and seems like a great idea, however I was surprised to see "TODO: Unit tests" in the README, so I peeked around in the source files, and effectively it seems there are no unit tests at all in the repo.

I'm not a TDD test-first evangelist, but 3+ months worth of coding with no test?

PuerkitoBio··on Build a Blog Engine in Go
Well, I edit with vim and git push when I'm ready. But if you really want a browser-based editor, [Draft][0] is very nice.

[0]: https://draftin.com/

PuerkitoBio··on Build a Blog Engine in Go
Author here. As I mention in the opening lines, I agree that this is really not the most original idea, barely above web frameworks :)

This was an attempt to build the minimal features required to have a useful yet ridiculously simple blog engine. Of course it is very subjective, and to me there are enough options to comment outside the blog itself (this thread here being a good example), I didn't feel this was required. I think a more "controversial" choice may be the absence of a distinct template for the index page. I know this is not acceptable for some, but then there are a few other blog generators to choose from!

PuerkitoBio··on Why I Left Medium
That's basically what I've done with [trofaf][0]. 3 subdirectories:

posts/

public/

templates/

Posts without valid YAML front matter are ignored (drafts, for example), and the few options available are on the command line, no config file. I run it with upstart and it watches the posts/ and templates/ directories for changes, rebuilds as needed. Pretty much the simplest still-useful static site generator I could think of. Fits my needs anyway.

[0]: https://github.com/PuerkitoBio/trofaf

PuerkitoBio··on Closures for class/module privacy considered harmful
This. And if you want to extend, encapsulate.
PuerkitoBio··on Impressions of Go
Apparently Shopify has quite a bit of Go on the backend. I don't know any specifics about the rationale, so I can't tell if this means anything WRT Rails.
PuerkitoBio··on Comparison of CSS preprocessors
why exclude Stylus?
PuerkitoBio··on 2013 Nissan Leaf Review
Well, you can say this either way. It also packs 362 hp, which makes the other cars look like matchboxes in comparison.

Where I agree with you, though, is that it is crystal clear that they don't target the same customers, and in this regard, the comparison is indeed disingenuous, one way or the other. If it were traditional gasoline cars, you'd never see this (say, a Mustang alongside the Yaris, because, you know, they both use gasoline!).

PuerkitoBio··on Microsoft prepares U-turn on Windows 8
Were you so happy to bash someone that you missed the "default back to the desktop" part? From the average end user point a view, bring back the "default desktop" and the start button and yes, you're effectively back to Win7. I accept your apologies.
PuerkitoBio··on Microsoft prepares U-turn on Windows 8
> If they put the start button back and default to the desktop, that would address 90% of people's concerns.

And that would erase 90% of Windows 8. Hard to call Windows 8 a success if Win8.1 or whatever reverts back to the good ol' start-button-driven desktop by default. Windows 8 will be what, an obscure alternate desktop hidden in a user setting that no one will use?

The whole measure of success for Windows 8 is exactly the new UI and whether the users, you know, use it. The old desktop is barely an evolution of Windows 7 for the common user.

PuerkitoBio··on Go 1.1 RC1 is out
This was an example of a website built with Go for a talk given by Andrew Gerrand recently.
PuerkitoBio··on The Node.js Community is Quietly Changing the Face of Open Source
But because it comes with a small core, the time you saved will be spent searching and learning userland modules, written with wildly varying degrees of stability and coding styles. Unless, of course, you just use your own, then your time has been spent there. Much more of it.

I'm not trying to put node down, I'm a fan (switched to Go for most of my needs about a year ago, though), but this argument (small core so less to understand) just isn't valid if you're going to do anything more involved than learning the language and writing hello worlds.

PuerkitoBio··on Performance of Rust and Dart in Sudoku Solving
Selection, yes. Natural? Do you somehow imply that technology that "wins" mass adoption is "better"? Or that it gains mass adoption based on rational analysis of its "value"? There are quite a few unnatural forces at play, here...
PuerkitoBio··on "Getting started with Ember.Js is easy." - No it isn't
That's actually a very decent answer. You should've expanded your reasoning a bit on the ember thread. Although to be honest, I thought the tone was more funny than sarcastic, but I'm emotionnally detached from the subject. With your explanations, your reaction makes sense. Sarcasm is a slippery slope.
PuerkitoBio··on State Machines in Go
The end state could be a map[string]struct{}, since it is only used to test the presence of the string. The bool value is unused, and an empty struct takes no memory, so it would be an admittedly tiny optimization.

Related: Rob Pikes' lexical scanning talk (state machines in Go): http://blog.golang.org/2011/09/two-go-talks-lexical-scanning...

PuerkitoBio··on What It's Like To Be Ridiculed For Open Sourcing A Project
Yes, you are missing something. The features of his utility is not the point.
PuerkitoBio··on Go: a nice language with an annoying personality
I don't know for Andrew, but I use Sublime Text 2. Cmd-., Cmd-P and type the import name, you're done (it toggles add/remove of the import). You don't have to leave your position in the file.
PuerkitoBio··on What I Expect From a Programming Language
Interestingly, these qualities all apply to Go:

- easier to read than write : it has been said a lot that go (esp. its error handling) was somewhat verbose, though very readable.

- Not tricking the programmer : this one is a bit subjective, go does use the equal sign as assign operator, but the required braces for if-else, gofmt tool and strict compiler help in not tricking you.

- one way to do things : go (its community) is very actively promoting the idiomatic way of doing things. Also consider, no while/do loops, only for.

- as much static typing as possible : maybe not as much as rust, but yeah, very static typing (array length is part of the type, for example)

- no warnings : exactly that! Unused variables and imports are errors.

- coding conventions part of the language : the gofmt tool does that. Don't publish code that is not gofmt'ed!

PuerkitoBio··on Reeddit - Minimalist, elastic and read-only web app client for Reddit
I love this UI so much more than the original. Anyone knows if something like this exists for google groups? Both desktop and mobile UIs are horrible.
PuerkitoBio··on Why I Program in Go
search for golang, most relevant resources will be found with this term.

Edit: also, for package discovery, godoc.org. But golang+anything usually works.

PuerkitoBio··on Felix - a fast scripting language
Looks very interesting, well done to whoever did this. After an admittedly quick and superficial glance at the tutorial, I'm not fan of chapter 6 though. Why so many ways to write calls? With no idiomatic syntax, it means I have to know all these variations if I hope to understand Felix code (since it is ok for anyone to choose whichever style).
PuerkitoBio··on Using Github issues to track house repairs
That's funny, though I think something like Trello is more appropriate for this.
PuerkitoBio··on The state of low-level system programming
Also, a way to compile without kernel (system) calls, so that it can be use for kernel development. It used to be possible with go, but no more with go1. Then these languages would truly be able to replace C.
PuerkitoBio··on Game Over
He was silenced with thousands of page views on his blog. He was silenced with hundreds or thousands of tweets. He was silenced by making HN front page. Yeah "controversial" opinions are really in danger.
PuerkitoBio··on If Hemingway wrote JavaScript
This is fun. Remember fun?
PuerkitoBio··on The iPad 1
First, Android tablets did not exist back then.

Second, the same problem is true for Android. How many smartphones sold last year will never see jelly bean? If my Atrix wasn't rooted, Id still be on gingerbread. These devices have a one-year, two-max "relevant life expectancy".

That's a shame. Both ecologically and ethically.

PuerkitoBio··on Facebook and Google launch lobbying group, The Internet Association
There is a need for such lobbying, but it should be led by individuals as citizens (an international asociation), not by companies with varying degrees of interests.

Still, it's better than nothing (no godaddy in the association, I see!). I do believe Google mostly fights for a free, uncensored web, though once a conflict arises, between shareholders and freedom, as with any company, shareholders always win.

← PreviousPage 2 of 3Next →