jbothma
I'd suggest you at least get very familiar with AI tools like copilot and cursor. Get good at using them and leveraging them for efficiency. Also get a feel for their limitations. Within those, there may be opportunities. Beyond that I think as always, participate in professional networks - meet people in tech, contribute to open source - connections help you stand out when there's a whole globe of competition.
If not, a little vamity badge doesn't represent much as a value proposition.
The main struggle is lack of sufficiently skilled applicants.
The problem might be our ability to attract them! But it's a tough market.
I don't really agree. Perhaps we're incredibly lucky as a civic tech non-profit, but our limiting factor generally isn't money. It's skilled people who can take responsibility and deliver. So if OP is an experienced developer who is willing to look a bit beyond just code, but still bring serious tech skill and experience to the table, I'd like to talk to them.
See code for all and code for america.
If we see coding as an exercise in describing the system in a way the computer can execute but most importantly, other developers can understand and maintain, developers are simply another persona, and a card sort between developers would elicit the abstractions and names we should strongly consider using for things in the code. Same methods as information architecture for users.
I kinda see these parts as part of (non-dev-technical) design and designers differ in the degree to which they own these
- visual design towards a design system - abstract system of "this kind of thing looks like this so that the user can see it's this kind of thing and it looks good"
- information architecture - actual things we have on the site or page or app or system, and how we organise them so that they make sense and match the user mental model
- ux design - the use of the above two to sure it both looks good, and people find stuff, and are able to use stuff
- copywriting - hopefully happens somewhere in there
This training series from webflow touches on it, but perhaps not as much detail as you'd like https://university.webflow.com/lesson/freelancer-220-develop...
- configuration management as env vars
- reverse proxy routing traffic for a given hostname to the correct container, swapping to the new container upon deploy
- plugin for tls cert generation using letsencrypt
- zero downtime deploys - it starts and smoke tests a new container before taking down the old one on deploy
- plugins for running databases and connecting your apps to them
Show HN: Monitor delivery of automated emails – catch broken email alerts
What might be nice is a quick way to delete stuff if you accidentally send something sensitive to a public instance.
Just before this I built a crystal radio - basically a very long wire, a diode, and a crystal earphone. No amplifier.needed because the earphone is so sensitive.
As I got the amplifier all soldered up, I heard radio on a speaker without any signal connected if I touched a metal tool on some contact.
I asked about this on an electronics mailing list and if I recall correctly people were mostly annoyed that I was talking rubbish. But I'm pretty sure something was acting as the diode, I was the antenna, and the amplifier put the signal out.
Somewhere these misrepresentations are being taken as fact.
A big example:
> Another advantage of a conventional cab design is that the truck can be more economical. Surely they usually pull heavier loads, but if there were two trucks, one a cab-over and another one a conventional cab design, and they had the same powertrain and the same cargo, the conventional cab truck would most likely use less fuel. Of course, that is just in theory – in reality there are too many factors to consider.
I don't know... power, load and fuel economy is the kind of data that's extremely available about motor vehicles... this is something we can't figure out? Or were they just writing hearsay to push content and get clicks? ("Subscribe to our facebook. Loads of content coming soon!")
One of the reasons i chose comouter science was that it was an engineering discipline where I didn't have to wait for materials. I can dream something up and build it tonight. That also means you can progress as quickly as you choose. Perhaps at the cost of social relationships. And we often do that at a stage where we haven't learned the value of those relationships yet.
At least for me, what you describe comes out of an unhealthy level of perfectionism and expectations on myself. Expectations I'll never satisfy, hence unhealthy behaviour if I don't address my expectations. A therapist helped make those more recognisable for me. Consider it.
As long as you have balance in work and other activities, there is work in our field that you will be able to look back on and feel a sense of achievement. Look up civic technology. What tech offers is making things feasible and accessible where it wouldn't have been before. Things can be more efficient, like offering remote learning, data collection, analysis and data-driven decision making.
But you don't have to do civic tech to be proud of your work. What tech offers can benefit society in very many ways. It's even justifiable to work for a bank if it's a bank that doesn't exploit people. And as an employee you can help keep it that way.
So don't be too harsh on yourself. And you don't necessarily have to leave the industry to feel you've accomplished something.
- There's a place for backend focused development for the web. So you don't have to be an expert in frontend. But it helps to understand frontend concerns so you can speak a frontend dev's language to build interfaces that work for their needs. Be it server-side or APIs.
- there are fun technicalities of frontend - state management, asynchrony, software architecture for these problem spaces - lots of things that turn out to be technically interesting where you might be able to carve out a niche for yourself so you don't have to spend most of your time pushing pixels
- like desktop and probably mobile app development has gui frameworks where you can assemble UIs with components with largely existing styling that just needs configuration, the web frontend space has component libraries with style plugins like bootstrap and material ui, where a lot of styling is done for you, and you can focus on assembling the application rather than visual design or pixel pushing. It's not perfect for all cases, but it's effective for many. Which means if you don't want to be designing and building websites, you can still build good looking applications for the web and focus most of your time on functionality.
> Paul advocates cultivating a sense of “discomfort” when you’re not working. I’m not going to question it’s efficacy- this is an extremely effective way of compelling yourself into a variety of habits- but this advice extends beyond that.
>
> Doing this might help you work more, but it may permanently impact your ability to enjoy yourself outside of work. This type of mental trick is addictive, and it alters your perception of normal, developing a need to work that is disconnected from your personal goals.
To finish even my boring or tough studies, I oriented myself in such a way that every problem or sub-problem is a puzzle, and every solution is an endorphin hit.
Now I'm so addicted to this hit that my work can reliably give me, that it's extremely hard to stop work and be in the moment in the rest of my life.
PAAS level deployment and failover is sufficient. (Edit: for my needs at the moment)
If you keep your async tasks in memory in any system they'll disappear when you deploy.
So they weren't really reliant on the things that set erlang apart. So the cost of the small support base in tooling and libraries is more significant.
- light "threads" and supervision of them
- OTP which is largely a library other languages with message passing and light threads could implement
- garbage collection per light "thread" rather than stop-the-world
Akka was on the right track in supporting the same approach to highly concurrent and fault tolerant software. The JVM might have gotten better at garbage collection without paid plugins since 2015 when I last used Erlang?
But I'm curious what stack in particular is seen as superceding erlang.
That said, I think there are very many http clients that implement enough of the standards to me incredibly rich and in line with the spirit of the protocol. The web for humans and machines is based on http. It can improve, but the standard has quite sufficient support to be called practically meaningful