Not much to add, but as a very happy uPlot user here - just wanted to say thank you for such an amazing library!!
HN user
aurbano
Staff Engineer @ runwayml.com - I do ML, full-stack development and I've been seen doing AppSec.
Website: https://aurbano.eu
Github: https://github.com/aurbano
LinkedIn: https://linkedin.com/in/aurbano
Telegram: https://t.me/aurbano
This is awesome!
Would it be possible to ditch Twilio and build it as a peer-to-peer system though? Or does that always require a coordination server?
My point was that instead of blaming ML - or optimisation tools really - for gaming objective functions and coming up with non-solutions that do maximise reward, AI could instead be used to measure the reward/fitness of the solution.
So to the OP's example "optimise a bike wheel", technically an AI should be able to understand whether a proposed wheel is good or not, in a similar way to a human.
Is AI the danger, or is our inability to simplify a problem down to an objective function the problem?
If anything, AI could help by "understanding" the real objective, so we don't have to code these simplified goals that ML models end up gaming no?
2kW is literally the output of my patio heater haha
This is awesome! It makes reading the articles a lot more engaging as I can directly see comments without the back and forth :)
I might start reading the actual submissions more often instead of just the comments
That's a great observation actually! They should've made the design do that automatically based on story ranking
I see a lot of comments wondering how AI could be useful as a software engineer so I'll give my take on it:
I envision it being able to fully replace a junior engineer, and in some use-cases senior engineers as well.
In the case of junior engineers: the AI should have access to an internal knowledge base (i.e. Confluence) and the task/ticketing system (Jira), and ideally the internal chat (Slack). I would assign tickets to it, and I'd expect the AI to reply with comments asking for clarification when there is something unclear, or proposing an implementation before starting if it's not a very simple task (this could even be defined in the task, using story points for instance.
Once cleared, the AI submits a PR linked to the task - so far just like any engineer in the team would. The PR gets reviewed as usual, with suggestions/requests for changes made by the (human) team, which then get addressed by the AI. With the big difference that all this process may happen in less than 1h from ticket creation to PR review.
I wouldn't expect it to be able to implement complex features, onboard new libraries, or rearchitect the system in major ways to accommodate future features - just like I wouldn't expect that from junior team members.
It would obviously be amazing if it could incorporate previous PR comments into it's "context" for future work, so it could learn and improve.
Separately I mentioned it could also do part of the job of senior team members - in the form of PR reviews. If it has access to every previous PR review and learns from them it might be able to give insightful suggestions, and for very large codebases it could have an advantage over humans as it could find patterns or existing code that may be overlooked (i.e. "It looks like this util function you added is the same as this one that was already there", or "This code looks different to similar areas, but follows a different pattern, you might want to rewrite it this way //..."
Is GPT-4 there? Definitely not, perhaps an LLM is not even the way to achieve this, but I absolutely see this becoming an incredible asset to a tech team.
Best thing you could do, spend some time learning how it works properly (query keys, invalidations... ) and how you'd set up things like pagination.
If at any point anyone goes like "oh it doesn't seem to support this, we'll have to write some wrappers/custom stuff", take a step back and read the docs again or ask around - the library in general takes care of everything it should and gets out of the way really well otherwise.
Happy to help with this.
Assuming you have a table where the identifiers are stored you'd have the internal one (UUIDv7) and the encrypted version from it (external id).
You could rotate encryption keys whenever you want for new external id calculation, so that older external ids won't change (as they are external, they need to stay immutable).
We recently migrated to Poetry [1] for dependency management and so far it's been a breath of fresh air - it feels like what Python deps should've always been!
You can even have dependency groups, to separate main/dev dependencies for instance. It also brings env management, and plays very nicely with Docker if you use containers.
This is something I've been thinking for a while for my long term future!
A dream of mine would be to setup a hostel of sorts, with an area for camping, a cafe, maybe food trucks in the summer?, surf/climbing options nearby and perhaps a partnership with schools/guides.
And the main thing: a big hangar to work on campervan conversions, with a ton of tools available and some staff supervision. The idea being that you bring your van, pay some sort of membership/one-time fee and work on it, with our help.
Perhaps do some in-house conversions for clients, but that would be just a side business to help keep things going.
Sorry the position is now filled!
Well, I think there's value to both points - how much of the maps code would you need to be able to get something working, and how much work would it take to implement all the custom internal dependencies that would probably be missing?
I'm sure there are very complex valuable pieces of code within the maps codebase (or any other), but it would be a fairly massive task finding those pieces, extracting them, and getting them to work properly in a different codebase...
Ah yes apologies - edited the link, let me know if it works now!
Thanks
I think they mean something like:
[Client]->[Cloudfront]->[Load balancer]->[ECS service in a VPC]->[RDS/other internal systems]
* Replace the above with any other cloud provider, or just commercial/open source tools that do the same job running in a VPS or whatever *
I can't see how any of this could be claimed to be protected by an NDA or similar, as this is just a highly standard architecture.
If you work on a proprietary system that has a specific architecture just don't mention that of course. I think the above allows us to discuss things pretty well, talk about introducing caching, why each layer is there, TLS termination, authentication/authorization concerns and implementation, secrets management...
We should foster a world full of people who use their brains to interpret rules.
If we're going to blindly do something because "it's the exact rule written here" then we might as well replace all decision makers with an AI that never interprets anything.
Their teacher was wrong for not interpreting the rules correctly - everyone's aware of that. On top of that the people writing those rules were wrong as well for either assuming that teachers would interpret them correctly, or not being more explicit when writing them.
It's a competition that includes writing code as a team: one of the main things you'd want them to do is to use git and thus a website like Github.
PHP was my first language back when I was a teenager in highschool - it all started because I wanted to get some data from users and store it (I just knew basic HTML and CSS back then), when a friend mentioned he used a PHP snippet to send an email from a website. That sounded like magic to me so I bought a book on PHP and my mind was blown by the possibilities.
Several websites and years later I had a pretty good understanding of backend/frontend concerns, web security, SQL and databases... although I didn't really bother setting up a local environment so I just tested new stuff "in prod" by dropping the new files directly via FPT!
After University I then started working as a software developer doing full stack work (mostly Java & Python backends) and Angular, then React for frontend.
In many ways I prefer TypeScript + React in the frontend with a Java/Nodejs + TS GraphQl backend, but I remember the speed with which you could get a website up and running, self contained, with no CI/build/deploy issues and it was the best thing ever to learn really
I'm almost curious to see what it'd be like to build a website super professionally now with PHP, but I'm pretty sure it'd feel very similar to typed python or Java
This has probably been said many times before - but it also seems like a new era for digital surveillance or espionage: bots could "befriend" humans, create full networks of fake people crafting any story imaginable in order to extract information. Maybe
For fun or looking to do something with it?
I started installing a reversing camera in my car, but quickly realized I'll have to drill into the car to get the cables through so I've postponed it to another day when I'll start a lot earlier (almost 4:30pm and it'll be dark in a couple hours)
I've been using Mealtime [1] for a few weeks now and it's been a game changer - literally!
Every meal is different, simple, and healthy; and it's removed the hassle of having to figure out what to cook and what to buy.
It integrates with online groceries, but I believe it may only be available for the UK, unless the list of supermarkets changes based on location.
I'm not affiliated with them at all, just a happy customer
I'd bet a significant amount of money that in most cases no one will ever bother to look through the commit history...
Referral bonuses though, if your profile looks good I would probably do a quick coffee or even a video call nowadays and then pocket a nice little bonus if you make it :)
I started in the big corporate company and now work for the exciting startup.
You want to maximise your learning, as long as there isn't a massive salary discrepancy try to have a lengthy chat with your future tech lead and pick the one that seems better - ultimately this is the person you'll be learning from the most in the next few years.
And also, don't be scared to quit or change teams early. Don't stay longer than you have to.
I've been writing code for 16 years, which is now over half of my life.
I've been a full time software engineer (now lead) for the last 9 years. I've been in similar situations to this article where most of my time was spent in useless meetings that I disliked, I tried to improve things, to focus meetings, to improve our efficiency.
And all that aside I still love coding. Granted not all types of code, not the one I have to write sometimes at work.
Just now I'm starting another little fun side project that I've been coding on my free time these last few weeks.
All this is to say that coding is just a little tool, what you build with the tool is what can be fun. I think it can be healthy to write code that does fun things from time to time, even if the code you write at work is for the most boring aim.
Best of luck!
Gabriel and the team are really awesome and this product is a genius idea - I'll definitely be using it at my company as it could save us a ton of work in setting up our testing pipelines.
- Alejandro :)
I've seen this before at very large companies. All testing done in local and very little manual smoke testing in QA by either the PM or other engineers.
There are big tech companies that don't have QA people.
I feel like the definition should just be "Addiction can be defined as a persistent, compulsive need to use a substance".
Surely one can be addicted even if it doesn't have negative consequences right?
Is it just me or it's actually hard to find an answer "how to know if you're addicted" in the article?
I skimmed the article and thought I found it when I got to the section titled "Key points – How to know if you’re addicted", in the middle of the article; but again this section didn't give a list of things to look out for...
Maybe I missed it?