HNHacker News
TopNewBestAskShowJobs

duggan

2,690 karma · joined June 5, 2011

Software developer, CTO.

Working on Manano (https://manano.ai), a way for tradespeople to make quotes and invoices using only WhatsApp.

Mail: ross@duggan.ie

Mastodon: https://mastodon.ie/@duggan Blog: https://duggan.ie

[ my public key: https://keybase.io/duggan; my proof: https://keybase.io/duggan/sigs/Q5NKndkmAPY7z_rr6F5aCCILacMed6RndM3X7OZCpvA ]

submissionscomments
duggan··on CircuitPython: Programming Hardware in Python
CircuitPython describes itself a fork of MicroPython, with the major difference being its deployment workflow. What makes it a “toy” by comparison in your book?
duggan··on Software Design for Flexibility
The hard drive analogy is appropriate; the solution is to buy more/bigger hard drives when you need them. You can’t foresee all requirements, “the map is not the territory”, etc.

Similarly, you build a system with the best information available, and be prepared to change it when the information changes.

duggan··on Designing a scalable API on AWS spot instances
It's 25Gbps now[1]. I have a rule of thumb: if I haven't refreshed something I think I know about AWS for more than half a year, it's probably out of date.

[1]: https://aws.amazon.com/premiumsupport/knowledge-center/s3-ma...

duggan··on Measuring the Cost of Regression Testing in Practice
As with bugs in general, nobody sets out to write flaky tests.

Sometimes organizational imperatives like code coverage goals can result in less-than-stellar tests. Sometimes a developer doesn't understand the system well enough, and sometimes (often, in my experience) something outside the logical scope of a test changes, e.g., an underlying implicit dependency.

Even a test that is 100% reliable today may become unreliable tomorrow.

duggan··on Rules of thumb for a 1x developer
> when recruiters call and find out I'm married with kids they can't seem to hang up fast enough.

I don't really understand why this would be the case. From a purely practical standpoint, people loaded up with a family are more likely to stay and perform in a job for income stability.

I guess if a company is looking for people to burn through like firewood this might not be the case, but I think those are the places you want to avoid anyway!

duggan··on Tiers of answers to half-baked questions
I expect there's a fine line here between being generous and being seen as patronizing, but I try to cultivate a similar mindset (with varying degrees of success). I've always found it a sign of someone trustworthy, generally possessed by much more experienced colleagues.
duggan··on The software industry's greatest sin: hiring
I think you also have to account for the cost of acquiring senior staff. If you train them and pay them, your pipeline becomes more predictable than plucking them ad-hoc from other companies. That makes planning (your roadmap) more predictable.
duggan··on Working from home – things no one talks about
I think that would depend on the religion, but generally I don't think the comparison is equivalent.

I'd always thought the primary difference between vegetarians and vegans was ethical, rather than dietary. That part of the ethics of veganism is opposition to the mechanised slaughter of individuals that should have the same, or similar, rights to people.

Maybe this is more of a fringe belief as vegan options become mainstream?

duggan··on Working from home – things no one talks about
I mean, isn’t a large part of veganism an ethical stance against killing sentient creatures? It’s hard to see how that wouldn’t involve judging others to some degree.
duggan··on Why programming is difficult (2014)
As long as I'm paid a software engineering salary to develop software, I could be called a clown for all the difference it makes.

If you're programming, you're a programmer. Or a coder. Or a software developer. Or a software engineer. There is no consensus on the distinction between any of these things. Just lots of people with opinions because it's easy to have an opinion on.

duggan··on How to build a search engine with common Unix tools (2018) [pdf]
I always enjoy demonstrating various combinations of cat, grep, uniq, sort, and cut to folks unfamiliar with the command line; data scientists in particular.

Even if you can't ship a bash script to production, they're great tools for ad-hoc exploration and validation.

duggan··on Tell HN: Mailgun lowers free-tier API from 10k to 625 emails per month
I received a variation on this mail too. I signed up on their free plan years ago to play with the API, eventually setting it up just to do mail forwarding to GMail from my domains.

This move makes sense and I hope it works out for them, though I'm a bit disappointed, as $35 a month for low volume mail forwarding is just more than I'm willing to pay. I'd have paid $5 a month to save me the hassle of migrating, but $35 means I'll be finding an alternative. I doubt personal mail forwarding is their target market anyway.

Fastmail is probably more suited, and at $5/m is the right price point.

duggan··on Burnout is real – how to avoid it
I don't believe for a second that there is an endless supply of capable software engineers. The salaries available to folks of even modest experience simply don't support such an assertion.

This problem should be self-correcting. If it's as unproductive as it is unhealthy, then better companies will win by retaining talent for longer.

duggan··on Why I Turned Down an AWS Job Offer
> I got a couple of months' gardening leave (as it's known in the industry). The most senior guys would typically get six months off work: three paid, three unpaid.

I don't understand - three months unpaid gardening leave is just unemployment.

duggan··on Programmers: Before you turn 40, get a plan B (2009)
In companies that I've worked in, the traits listed would (very roughly) distinguish a junior from senior developer.

There's various ways of describing these levels, but I think programmer/developer is less clear, and seems to suggest programmer almost as a pejorative.

duggan··on Stripe's API was down
Alas, even the mighty telephone line is not infallible.
duggan··on A 30th anniversary note to Prince of Persia fans
There is a post published on Jordan's blog covering this, might be easier to read (no Facebook login nag): https://www.jordanmechner.com/prince-of-persia-30th-annivers...
duggan··on My Product Is Unexpectedly Being Used to Help People with Dementia
You’re a real asshole to say something like this.
duggan··on The Problem With Happiness
The word “concur” means to agree.

As the article makes no reference to Bhutan, national policy, nor concludes that happiness is a worthy goal, perhaps you intended a different word?

duggan··on A New Way of Voting That Makes Zealotry Expensive
I imagine in that scenario that Google and Facebook would get particularly good at resilience and security.

Once you've got enough people, 5% of them may as well have been hired by lottery, depending on what you're measuring. People get less productive, more productive, want to change the company, decide to steal things, etc.

I think it's interesting to think about.

duggan··on Slack S-1
Teams is truly mediocre, other than when it rises to irritating. I have no idea how anyone using it could prefer it to Slack.

It is imposed on people whose organizations have Office 365 subscriptions, it is not chosen.

duggan··on Ghost Villages for Sale in Spain
There is a difference between a $172k "gift idea" and the single largest purchase most people make in their entire lifetime as a loan repaid over most of their working career.
duggan··on A sold-out city? The fight to save Dublin’s nightlife
I mean, a convenient commute is nice, but so is access to cinemas, museums, restaurants, bars, etc.
duggan··on Amateur astronomers tracking the world’s spy satellites
I didn't realize Canada had such a heterogenous national composition. Thanks for highlighting, and the poster below who linked to the wikipedia article on the provinces and territories.
duggan··on My dog was killed on a walk with a walker ordered through Wag
Not the first time Wag has made the news for mishandling (and killing) pets[1][2].

[1]: https://nypost.com/2018/05/14/embattled-dog-walking-app-lose...

[2]: https://www.ajc.com/news/national/pet-dies-after-dog-walker-...

duggan··on AWS, MongoDB, and the Economic Realities of Open Source
Other than multi-document transactions, many of the changes to MongoDB since 3.6 are to do with performance and scaling - this is AWS' bread and butter.

Something to consider is how many applications depends on cutting edge database features. Developers often consider a database an object persistence mechanism whose details are to be tidied away. See, for example, the emphasis on database portability in ORMs.

MongoDB's most effective enterprise offering is support, in my opinion. They know their database well, which can make a big difference if your company is heavily reliant on it.

I suspect for many users though, AWS support will be good enough. Presumably, that's the danger to MongoDB.

duggan··on Clojure is Capable
I think a lot of Clojure developers have worked with gnarly codebases before, probably for the bulk of their careers. It's a common reason for using Clojure in personal projects, and seeking out Clojure work.

There are numerous ways to find satisfaction in work. I'd merely extend the reasons you list to include an enjoyment of the tooling and software you're working with. Might as well try to tick all the boxes.

duggan··on Robert Heinlein and the Harsh Politics of Science Fiction (2013)
Until reading this, I had no idea the film Predestination was based on a Heinlein short.
duggan··on “Devil Girl from Mars”: Why I Write Science Fiction (1998)
Outline.com also seems to do a reasonable job[1], though only directed at the inner frame, and the result is still fraught with borders.

I found both the article and this little tangent into its markup interesting, however!

[1]: http://outline.com/GxBzrY

duggan··on Deploying Mastodon on Digital Ocean
The command line has the advantage of presenting portable, terse and editable instructions that can be cobbled together into a recipe which can be abstracted and automated.

It's a very powerful interface.

← PreviousPage 7 of 15Next →