HNHacker News
TopNewBestAskShowJobs

michaelneale

2,135 karma · joined August 14, 2007

www.michaelneale.net
submissionscomments
michaelneale··on PostgreSQL Performance on Docker
You can run your docker container supervised with tools like systemd, runit etc - and have stderr/stdout (and signals) forwarded on from the container process to the supervisor - from then on you do what you would normally do if it wasn't running in docker.

Other approaches are to have the app(s) in container log to a VOLUME that is bind-mounted in from the underlying host (where you can access them directly) - yet another approach is to bind mount in syslog or other tools into the container and allow the process(s) inside the container to log to it. All work well.

michaelneale··on Why I left Pivotal
"After all, patches are themselves a sign of the legacy that will be surpassed"

I think there are plenty of cases that refute this - just a sampling of nonsense.

michaelneale··on Why The Cool Kids Don't Use Erlang
He is now - was a microsoft MVP earlier - he was actually forced to drop his "MVP" on joining Google (IIRC).
michaelneale··on Why The Cool Kids Don't Use Erlang
I was one of the first few hundred users and it was entirely .net/C# questions around this. This was mostly due to Jeff Atwood (at the time) visibility in that community - so it had a vast headstart, things have changed since then but that is how it started (well both Joel and Jeff were slightly more visible in the MS communities).
michaelneale··on Why The Cool Kids Don't Use Erlang
I think it is used more than people perhaps realise - and if you are deep into clojure - you are probably already on the bleeding edge (at least as far as mainstream programmers are - remember there are a LOT of them) - thus would tend to come up against places that use erlang or clojure (self selecting?). (FYI I like both erlang and clojure, and have used both in anger).

I learned erlang before clojure - it I think the former helped me quickly pick up the latter, strangely.

michaelneale··on Using Docker with Github and Jenkins for repeatable deployments
Related: using Jenkins+Docker in a similar fashion myself I extracted most of what I do into a Jenkins plugin for publishing images (I was an early user of the private docker repos): https://wiki.jenkins-ci.org/display/JENKINS/Docker+build+pub...
michaelneale··on A “Perfect Storm” Moment for Multibillion-Dollar Open Source Companies
I have not seen the term "perfect storm" used to mean something positive like this - perhaps this is normal? (sorry, no comment on article comment, just was perplexed by headline).
michaelneale··on Literate builds?
Supporting a .travis.yml config file (or similar) should be relatively easy - as you mention - the multibranch stuff is probably the bigger "improvement" for Jenkins.
michaelneale··on Literate builds?
This is based on Don Knuth's Literate Programming: http://en.wikipedia.org/wiki/Literate_programming - but applied to build scripts.

(Readme is docs + executable)

michaelneale··on Meanpath - Search the page source, server headers and visible text on 150m sites
Wow very impressive - I can see so many diverse uses of this (the least commercial but fun one would be up to the minute javascript framework popularity contests!).

All the best with the continuing launch.

michaelneale··on Nginx now supports Websockets
Both cloudbees and apcera co-funded this feature for that reason. Heroku do have a routing mesh with more moving parts than just nginx though - so it will likely be a much harder change for them.
michaelneale··on Why do web sites and software take so long to build? And why is it so hard?
Thanks - yes I thought it was an old idea (might even be older - but I can't find anything).
michaelneale··on Why do web sites and software take so long to build? And why is it so hard?
Exactly - this article makes the very common (still) (1) mistake of thinking construction of software == writing code. Construction of software is compiler/interpreter/all the machinery that kicks in to take some text or instructions and makes it do something. To correct the analogy with building physical things - you could compare the architect designing a bridge (and arguing with engineers about materials and budgets) with writing code - that would be a fair comparison. The construction of software has been automated for some time.

This works just fine for construction of physical things because the cost sunk into to the "non construction" bit is tiny compared to the whole project - so no one spends too much time thinking about methodologies and automation of an architect coming up with the concept of a building.

(1) I note in the article the person mention spent time as a consultant in a big consulting company - this view is still held by them at least with the last brush I had with organisations like that (and they are incredibly frustrated by it).

michaelneale··on Our Culture of Exclusion (or, why I'm not at JSConf this year)
> So if you don't drink you're not a person?

ctide didn't say anything of the sort. I think ctide was trying to generalise from programmers -> people not implying all of humanity.

I have seen this phenomena (?) of "binge conferences" in many other circles - medical, engineering, accounting, legal. Journalism.. the list goes on, so it is a fair point.

michaelneale··on Programming Languages and Type Systems
I didn't read that in it at all - I thought it was gentle in explaining some of the absurd things that happen in javascript. In fact the "quick, in-web browser development" statement looks to me like damning with faint praise.
michaelneale··on The story of Google Guava and patches
For those who can't read the G+ post (yes, it can be a pain):

----------

The story with #guava and your patches

Guava users,

Many of you, when you request a feature for Guava, have submitted a patch to us with the implementation (or even pasted code directly into bug reports).

And we have almost never accepted any of these patches, let alone even read them. And I know this makes us look all manner of self-absorbed, arrogant and unappreciative. That's what I'd think in your shoes. So it's time I tried to explain to you more fully why it's like this.

I realize that from your perspective, you're handing us a shiny new feature on a silver platter. It should be making our decision easy, since the work is already done. It's a gift of your time and effort and you've already solved the problem and all we need to do is just accept it! Looked at that way, we're either idiots or jerks for not being interested.

But here's the part that I don't think many of you understand: the work you've done to produce that patch is actually minuscule compared to the total amount of work we have to do to put it in Guava. I know that it feels to you like you've certainly gotten us more than halfway there, but trust me, it's only scratched the surface.

- We have to work out whether the problem it's trying to solve is truly the right problem - We have to work out whether the solution presented is truly the best solution we can come up with - We have to find evidence in the internal Google codebase that users will actually use the proposed feature if we create it. If we are adding methods to our libraries that don't get used, it hurts our case when we try to argue to management that we're doing important work and need more staff. - We have to figure out how it relates to the piles of legacy code we have floating around our libraries (that you, lucky folks you are, don't even see!), and how we would deal with migrating those users if they exist. - We have to decide the best name and location for the new API. This is hard! We spend a lot of time in our API review meetings just batting names around. - We have to review the code deeply. Our code reviews are grueling and go on for many rounds. When you look at the code in Guava it tends to look "obvious", but we work very hard to achieve that quality. It's only obvious in hindsight. - In almost every case we have to completely rewrite the javadoc that first gets submitted to us. And this is very hard. Writing good documentation is probably the biggest challenge we ever face. - The tests that were first written are rarely sufficient; we're going to need to add more. When we do, some usually fail. - If the change touches on any existing functionality, we have to submit it to Google's global submit queue and analyze test results from many thousands of projects to make sure we won't break any internal users with it. - If the change goes in, we have to deal with the machinery that gets that change integrated out to you in Guava. - We then become responsible for fixing any bugs with it that come up over time, and dealing with the related feature requests it will touch off. - And the code never "stays finished' in general; we are constantly performing various maintenance tasks over our whole library (or even the whole codebase of Google), to make various cross-cutting improvements, and every bit of new code added increases that burden.

There's more I'm leaving out, but you get the idea. Guava did not get to the level of quality it has by accident, but by us being really obsessive about these things.

Now, when the patch comes from outside Google, we have additional mechanical overhead. One of us has to sponsor the patch as if it's their own, converting it into an internal patch that can merge correctly (which isn't always as trivial as it sounds), and sending it for review to another member of the team. And because we are the ones most familiar with our own style, conventions, practices and pitfalls to avoid, etc., sometimes just doing that plus "cleaning up" the code to get it ready for review is already more time-consuming than if we had written it ourselves from the start. That doesn't even mean that the code sent to us in the patch was bad. It can be very good by most standards but still need a lot of rework for our purposes.

Remember, if your feature is valuable, then we're going to want it in Guava whether you provided a patch or not. Providing the patch doesn't make it more likely that we'll decide it's a good fit for Guava -- if anything it just puts us more on guard against that seductive temptation to think "but it's already mostly done anyway, might as well!"

And here's the last thing. Be honest: if you were going to sign yourself up for doing all that work above... wouldn't you at least want to have the pleasure of writing the code for it yourself? I love writing code -- that's why I do this! -- but such a large majority of my time goes into activities like those described above. If my job were all about just applying other people's patches, I would inevitably start hating it after a while. Let me have some fun sometimes, okay? :-)

I really hope this helps to understand why your patches seem to go into a black hole. I know that no matter what I say it will probably continue to seem unappreciative and condescending, and I apologize. I do recognize that you are just trying to help. But, if you really want to help, then keep an eye out for the times when we will ask for help on a particular issue, because that's where your time and energy will really do the most good!

Rantingly yours, KB

michaelneale··on Aussies' fix for 'stagnated' email
yeah editors removed that (I shouldn't have added it).
michaelneale··on Aussies' fix for 'stagnated' email
Thanks - that explains it. Although I object to just using the headline of the page (as I think the ex-wave is more relevant than the 'aussies' bit - but I guess there is novelty for the rest of the world).
michaelneale··on Aussies' fix for 'stagnated' email
aside: how/why did the title change from the original that I posted? (I gave a title, but it seems to have forgotten that and reverted to the article?)
michaelneale··on Scamming the scammers – catching the virus call centre scammers red-handed
I have had it twice - both times I was working - so I pretended to go along with them. I faked crashes, and restarts (each that took ~ 5 minutes) while I went on with my work. At about the 50 minute mark they seemed to realise (both times) that it was a lost cause - so made excuses and just gave "advice" and hung up. So from that small sample I guess there is a limit to what they are able to sink on a given customer time-wise. My satisfaction was that it was 50 minutes they weren't perhaps attacking someone vulnerable.
michaelneale··on Happy Family, Successful Start-up. Impossible?
Currently doing/attempting/have done. Seems to be that working mostly at home (or being very near home) is an enabler, otherwise it would be too much absence. Just being there seems to be a big part of what kids need.
michaelneale··on Video: Quantum Levitation
This would have to be over a magnetic surface - like maglev trains http://en.wikipedia.org/wiki/Maglev (which apparently are not technically trains).
michaelneale··on How I Did It: Hartley Peavey of Peavey Electronics
That is my memory too (Australian) - Peavey were cheap but reasonable. Loud, reliable but sounded pretty bad. Mesa was certainly top end boutique.
michaelneale··on Show HN: Codecademy.com, the easiest way to learn to code
Well she did pretty well, need to spend more time. The problem is the lure of "moshi monsters" (which I am realising is a social network by stealth) - just one tab over ;)

It is really fantastic - the subtleties of dealing precisely with a computer (syntax) are often hard to get across, but I like how this eases them into it - but doesn't hide it away with visual programming. One of the greatest pieces of advice I was given before I started programming was that a computer will not tolerate mistakes, fuzzyness, vagueness. It will do your bidding, but no more.

michaelneale··on Show HN: Codecademy.com, the easiest way to learn to code
Fantastic - I am going to see how my daughter goes with this (8 years old) - previously has been python which was great - but she could do this on her own.
michaelneale··on Why 99designs raised $35 million from Accel Partners
The last time I tried it the results weren't great. That in itself isn't a problem but most of them were plagiarized from other designs (from the web). It wasn't easy to track all of them down, so it is probably reasonable to assume that a lot of the designs are rip-offs, and most people don't notice.

99designs refunded anything that was paid, and apologised, and it felt like something that is so common they have a well oiled process for it.

Given the risk of this, and that it is up to you to find if it is a rip-off - I wouldn't use it ever for anything that may be seen publicly (I expect you as the "owner" would be responsible).

(this is ignoring designer objections, which are another topic).

michaelneale··on Color CEO: The Tech Justifies the $41 Million
"thank you" for agreeing - as in for being 22 and still feeling that way. Phew, it isn't just the age.

I think that there are plenty of people interested in tech with nothing to do with any "social" aspects - it is just that social is new to the technology field and has attracted a lot of talent and money. I used to think, and still do somewhat, that "social software" is almost its own field of interest and study - which will feed into other areas of technology but still be distinct. Thankfully there are still plenty of other engineering problems to solve elsewhere (there is, isn't there?) for people like us to work on !

michaelneale··on Bing sets the record straight on recent accusations
It is all fun and games, and a bit childish. Obviously google are not offended, just trying to get some PR about it - just business.

But the argument "I rather Google spend.." can be applied to anything - it isn't as if they haven't be tackling other problems, and they are clearly worried about bing (at least in PR, bing spends big - lots of MS employees posting on forums, including here, which I am sure is encouraged). Bing is losing a lot of money for Microsoft, so by that token, I could say that they should stop it, and spend money on xbox (which is fantastic - no idea if it is losing money, but what a leader) - make it stupidly cheap, make it dominate the home etc ...

michaelneale··on Hudson (OSS CI Server) to rename itself to escape Oracle's control
Kohsuke's post: http://kohsuke.org/bye-bye-hudson-hello-jenkins/
michaelneale··on Why Groupon is not in Australia (domain squatter)
You can even have groupon.com/australia/...

For example, when you go to www.apple.com.au it redirects you to www.apple.com/au and no one thinks anything of it.

So this is either silly, or it is about more than the domain name, and more about the trademark in use locally.

← PreviousPage 2 of 34Next →