• 0 Posts
  • 17 Comments
Joined 2 years ago
cake
Cake day: July 10th, 2023

help-circle
  • Paywall, so replying based on the headline:

    Blue collar jobs are not a holy grail of safety from ai or refuge for prior white collar workers who have been displaced.

    1. You can’t just suddenly become an expert in a physical job, electricians require trade school and apprenticeship, heck even the easiest jobs in the construction world, painting or hanging drywall, require expertise and a random qa engineer will be genuinely terrible at the job.
    2. The culture of blue collar work generally incredibly misogynistic and requires a very hardy insensitive personality for women especially. There’s this sort of cultural inertia that has seeped into many blue collar jobs that sees a lot of love for trump and hate for soft handed people (the irony is incredible)
    3. Supply and demand are not just principles of product sales, a sudden massive influx of blue collar workers will push down wages for everyone, an economy requires balance and adaptation, there is never a single golden answer
    4. some blue collar jobs are more likely to be replaced with ai than others, but pretending that all blue collar jobs are perfectly safe from the impending storm is an uninformed and irresponsible take. Are indoor painters of new builds safe for now? Yes. But you can feel quite comfortable assuming that if some company comes out with a bot you can rent that does a phenomenal job at painting and costs 1/5th of a human painter the owners or managers of the companies who were contracting out the humans will absolutely switch to bots. Money talks and maybe some will hold out for a while but eventually other companies will offer their services for cheaper because of the cheaper labor and the human workforces will be unable to compete.
    5. blue collar jobs generally pay less and the future prospects compared to white collar jobs are significantly different. You don’t start out as a framer and end up as a partner, the attitudes of the managers of construction companies and similar often simply view the laborers as replaceable machines.
    6. blue collar workers sucks, for many you work in crazy harsh weather conditions (outside in 100 degree f) the jobs often require heavy physical labor, your coworkers are often drugged up conspiracy theory nutjobs, there are no watercooler breaks at 10am, you work hard or you get yelled at or fired. Imagine being an hvac repair technician in the peak of summer. Where exactly do you think you’re going to be? In the hottest part of the house in stifling conditions with all the pink fiberglass insulation without any ppe, all goddamn day.




  • Ngl I love tailwind, I’ve been through so many different css paradigms

    • separate css files: why did we ever do this, if you’ve ever used kendo’s css stuff you’ll understand how unfathomable hundreds of thousands of lines of css with complex rules is. Identifying all the things that affect a single component is the work of dozens of minutes at minimum, sometimes hours, you have to understand every nook and cranny of the css spec.
    • inline styles: fine, but verbose and requires object spreading, harder to compose, theming is tough and requires discipline to be consistent in your theme conventions, almost impossible to also theme imported library components
    • module.css with imported classes: my go to outside of tailwind
    • scss: I actually really like scss but it exacerbates the complexity and mystery of css, great for small projects but terrible as projects bloat
    • bootstrap: basically just worse tailwind, providing only components and colors

    That’s all I can think of right now, but tailwind is my preferred way to style a new project, I love how easy theming and style consistency is




  • Nobody knows the future, but we can definitely speculate. Programming is still a good career if you’re talented, but it may no longer be the golden standard of well paying jobs that it has been for the last few decades.

    More important than anything, if you want to program, then do it. Don’t wait for university to tell you how, get your hands dirty and start making something cool, a game, a web app, whatever.

    Getting a job is hard for junior devs right this second for largely macroeconomic reasons, that may change in the future or it may not. You can sidestep that issue entirely with a solid portfolio.

    Learn to use the latest ai tools, but don’t rely on them to do the work and learning for you, “vibe coding” may or may not be a future career but if it is the salary will likely be significantly lower than software engineering.

    A degree does not make a programmer, but programming does.



  • I’ve used everything, vim, nvim, emacs, visual studio, vscode, sublime, codeblocks, android studio, xcode, bloodshed, intellij, eclipse, VB, geany, dreamweaver, qt, atom, and cursor (even though it’s really just a plugin)

    It doesn’t matter. It will never matter. I use vscode today because it handles everything I throw at it and it’s easy to make extensions for. Or cursor if I’m feeling lazy, the agentic mode with claude is pretty damn good if your codebase is well established.

    Don’t get hung up on the editor, just use the tools available to get the job done, at the end of the day programming is converting concepts to text.



  • I do this on my ultra, token speed is not great, depending on the model of course, a lot of source code sets are optimized for Nvidia and don’t even use native Mac gpu without modifying the code, defaulting to cpu. I’ve had to modify about half of what I run

    Ymmv but I find it’s actually cheaper to just use a hosted service

    If you want some specific numbers lmk



  • I explained a little about buffer overflows, but in essence programming is the act of making a fancy list of commands for your computer to run one after the other.

    One concept in programming is an “array” or list of things, sometimes in languages like C the developer is responsible for keeping track of how many items are in a list. When that program accepts info from other programs (like a chat message, video call, website to render, etx) in the form of an array sometimes the sender can send more info than the developer expected to receive.

    When that extra info is received it can actually modify the fancy list of commands in such a way that the data itself is run directly on the computer instead of what the developer originally intended.

    Bad guy sends too much data, at the end of the data are secret instructions to install a new program that watches every key you type on your keyboard and send that info to the bad guy.


  • There is a ton of literature out there, but in a few words:

    Rust is built from the ground up with the intention of being safe, and fast. There are a bunch of things you can do when programming that are technically fine but often cause errors. Rust builds on decades of understanding of best practices and forces the developer to follow them. It can be frustrating at first but being forced to use best practices is actually a huge boon to the whole community.

    C is a language that lets the developer do whatever the heck they want as long as it’s technically possible. “Dereferencing pointer 0?” No problem boss. C is fast but there are many many pitfalls and mildly incorrect code can cause significant problems, buffer overflows for example can open your system to bad actors sending information packets to the program and cause your computer to do whatever the bad actor wants. You can technically write code with that problem in both c and rust, but rust has guardrails that keep you out of trouble.


  • I’m a 10 year pro, and I’ve changed my workflows completely to include both chatgpt and copilot. I have found that for the mundane, simple, common patterns copilot’s accuracy is close to 9/10 correct, especially in my well maintained repos.

    It seems like the accuracy of simple answers is directly proportional to the precision of my function and variable names.

    I haven’t typed a full for loop in a year thanks to copilot, I treat it like an intent autocomplete.

    Chatgpt on the other hand is remarkably useful for super well laid out questions, again with extreme precision in the terms you lay out. It has helped me in greenfield development with unique and insightful methodologies to accomplish tasks that would normally require extensive documentation searching.

    Anyone who claims llms are a nothingburger is frankly wrong, with the right guidance my output has increased dramatically and my error rate has dropped slightly. I used to be able to put out about 1000 quality lines of change in a day (a poor metric, but a useful one) and my output has expanded to at least double that using the tools we have today.

    Are LLMs miraculous? No, but they are incredibly powerful tools in the right hands.

    Don’t throw out the baby with the bathwater.