HNHacker News
TopNewBestAskShowJobs

pm

1,005 karma · joined June 11, 2008

Product engineer.

Contact: paulm at mgn dot tc

submissionscomments
pm··on USDS Digital Services Playbook
An acquaintance worked as CTO of the DTA, and ultimately it was a joke. The skills were there, but the clout to bust through politics was not there, so nothing ever got done. He ended up leaving after less than a year.
pm··on Against Essential and Accidental Complexity
I personally refer to these concepts respectively as inherent and incidental complexity, what should be classed as inherent complexity is anything that directly supports the description of the problem. Everything else is incidental complexity (and we mostly write incidental complexity).

The big thing that I don't hear often is about where complexity lives. Complexity is like a pile of receipts you need to hunt down to do your tax - you can have it distributed all over your house, you can sweep up into a pile, or you could file it. The first is by far the most complex, and I've worked on codebases that looked like that. Even the most trivial of changes takes a long time.

pm··on Choose Boring Technology
As an addendum, choose technology you enjoy. As a consequence, it should be something you already know, but you'll be so more productive because it won't feel like a chore.
pm··on “I've had to relearn coding to get through the new interviews”
The Django shop test had nothing to do with your skills as a developer, and everything to do with language gatekeeping. It's just overcompensating for boring work and poor pay. It's no different to how the gaming industry exploits workers.

Don't give up. And for the love of all that is holy, don't work municipal IT, it would only demotivate you further. Keep at it, improve your skills and keep applying.

pm··on Foxconn’s empty buildings, empty factories, and empty promises in Wisconsin
Fox "con" surely.
pm··on Emerging Architectures for Modern Data Infrastructure
I remember reading about Looker, before Google bought them out. I never used it myself, but it may have fit the description.
pm··on Wim Hof’s teachings about breath work and the health benefits of cold plunges
Without having to listen to 4 hours of podcasts, what was their take?
pm··on The Writer-Diplomat Tradition
Thanks, I needed this comment. I'm a fan of your writing style.
pm··on Independence, autonomy, and too many small teams
Thanks! Indeed, it's the interfaces that are hardest to define. I don't know a good heuristic to determine it I'm afraid - everything I've ever done was on intuition.
pm··on Independence, autonomy, and too many small teams
The OP is describing Conway's Law, and shows that half the battle is being able to define the problem space in a way that minimises communication and maximises utility. As such, it could be inferred that beginning with a monolithic organisation, and splitting off a new team at the appropriate time when a useful problem space had been defined could be a possible best practice, assuming the organisation was flexible enough.

Food for thought, at least.

pm··on Build Software from Front-to-Back
Build software through "meeting in the middle". Define the front (user interface), define the back (data structures), and then progress towards the middle.

After all an interface is, by definition, where two things meet and interact. There are too many unknowns otherwise.

pm··on Being Slow to Criticise
Colin is talking about criticising implementation decisions in software, in particular unconstructive criticism bereft of context.

Colin is criticising your idea, but is also trying to understand how you formed that idea in the first place, in an effort to hedge against the possibility it has good reasons he can't see. He's not just saying, "your idea is garbage".

pm··on Complexity Has to Live Somewhere
Indeed, but we need to differentiate between the inherent complexity of the problem (which can't be mitigated, but only shifted around as the article points out), and the incidental complexity added when we create the solution.

The inherent complexity can be taken on by the solution (and the inherent complexity may be hidden behind a simple interface, or it may be introduced in the interface, but that's another problem), or it gets removed of the problem domain, and then needs to be dealt with by the user.

There's no correct answer; half the problem is defining the appropriate problem domain, and even then there are only better or worse solutions. The incidental complexity of the system comes purely down to the implementation, which often comes down to how well the problem domain is defined in the first place.

pm··on I built a amp+cab+effects simulator for guitar on a Raspberry Pi 4B
That's a fair amount of tinkering time. Go for a walk, and enjoy the milestone. I'll check this out sometime soon.
pm··on I built a amp+cab+effects simulator for guitar on a Raspberry Pi 4B
I've seen the Spark ads popping up in social media for the last couple of weeks, and while it's not really my thing in terms of guitar playing (I prefer restricting my pedalboard), I can appreciate the effort going into a product like this, especially as a software engineer.

How much work have you put into this so far?

pm··on It’s Time to Build
True, in the case of "not enough surgical masks", it's not ambition (and I don't mean it in a financial sense either). It's a combination of ambition, imagination, foresight and desire.

If Bill Gates had manufactured or stockpiled basic medical items, someone would be complaining about why he didn't do it sooner, or accusing him of profiteering, or somesuch. It shouldn't be up to one person to be responsible for the foibles of the human race, even if they have outsized resources. They just become a scapegoat for our own lack of responsibility.

pm··on It’s Time to Build
Perhaps desire is the wrong word to use. I don't think he means desire in terms of willpower or motivation, but in terms of ambition. I do think the world has lost some of of its ambition over the last 50 years.
pm··on Stripe raises $600M at nearly $36B valuation
If you're doing enough business they'll usually cut your fees if you ask (according to a friend who did just that).
pm··on Economists who defend disaster profiteers are wrong
Agreed, what harm does a minimum wage cause? We have a reasonable minimum wage in Australia (though I don't think it's been adjusted for inflation for a while) and it facilitates time for education, which in turn facilitates social mobility.

On the other hand, you can have no minimum wage, and end up with a class of working poor who have no time to educate themselves, thus condemning them to a life of constant work with no hope of social mobility.

I don't see how a minimum wage is harmful.

pm··on Ask HN: Starting over after business failure
What field did you come from and what did you end up going into?
pm··on Ask HN: Advice for a new and inexperienced tech lead?
You seem to already have it, but admit what you don't know, and don't be coy about it. You will learn from those below you as much as from those above you.
pm··on Ask HN: Haven't worked for a while, best guide/advice to start a hobby project?
I suffered from the same paralysis when attempting to do my own projects, and it had less to do with the tech than it did the problem I wanted to solve.

Eventually, to get started, I settled on doing a small command line app in Python/Click. It was a utility I actually needed (even if someone else didn't really need it), and it's the kind of thing I could iterate on without too much trouble.

It's usually much easier to start small.

pm··on Why to use ‘python -m pip’
Yes, use pipenv or poetry. I don't know why there are still wars about this going on.

Unfortunately there are people who complain that pipenv makes the ecosystem as bad as npm, which frankly is an improvement.

pm··on A push gone wrong in the name of what, exactly?
The updated version of the program, when pushed to servers, crashed the older version of the program on other servers which had yet to be updated. Rather than rolling back to diagnose and understand the cause, they charged on updating all the servers.
pm··on The boring technology behind a one-person Internet company (2018)
There are people who create consumer products, and there are people who create the products that power those products. It's no different to when id Software sold licences of their engines to other game developers. Perhaps you can turn your infrastructure into a business of its own.
pm··on Jony Ive’s Mistakes: When Beautiful Design Is Bad Design
I've been using Magic Mice for ten years without any problems. Was there a model that had different ergonomics than the rest? I think I've used all models. It's been my favourite mouse since I started using it (mainly for the touch functionality).
pm··on Python consumes a lot of memory – how to reduce the size of objects?
The quickest change is no change, naturally.

However, "better" is dependent on the situation. If the data is unlikely to change, stay the course. If not, then while a database might be more maintainable over the long term, even if not as efficient.

pm··on The side of Paul Allen I wish more people knew about
Same age as you, and I'm doing the same thing.

I'm continuing as a software engineer to pay the bills, but I pursue music, games, and at one point in my career was a graphic designer and illustrator (though perhaps not very successfully; I'll get back to it at some point).

I'm about to start learn electronics as I'm interested in building robots and making custom guitar pedals. I don't think I could ever be laser-focussed (95% sure I'm ADHD; used to think I was bipolar but not sure about that diagnosis anymore). Embrace your neurology.

pm··on Ask HN: Resources on how Google/Facebook etc. approach software design?
Data structures are the basis of what you start off with for any program. The key is to understand the domain you want to model. It's hardly unique to FAANG.
pm··on Panic’s Next Editor
Heck, I remember Microsoft FrontPage doing at least some of this.
← PreviousPage 4 of 16Next →