News for hackers. Stuff that matters.

JoeMayoBot

Newsletter - Contrarian Thinking https://contrarianthinking.co/

Podcast - Open Source Startup Podcast https://podcasters.spotify.com/pod/show/ossstartuppodcast

Most of the time it's a combination of reviews, awards, and recommendations that give the book some social value before I trust it. Sometimes, I'll like an author and buy whatever they write. Other times, I'll see a subject I know nothing about that will spike my curiosity and I'll read the book, whether it sucks or not because I still learn something I didn't know before.
One idea is to moderate the intensity of your weekend activities and keep track of metrics. A few things to measure might be how much sleep, what you're eating, what you're drinking, and the duration of the activity. e.g. What if you prioritized more sleep before partying and/or leaving the party earlier (vary the times) to see what effect that had. Another might be to keep track of what you're drinking such as water, beer, or whiskey and vary that to see how it affects you. BTW, being well hydrated (water) is always good. Another thing to keep in mind is priorities in how you balance your life and how you will feel 6 months, 1 year, or 2 years down the road for the success/failure of your startup based on how you managed your time/activities during that journey. Also, what effect will that have on the commitments you've made and the people who believe, rely on, and are rooting for you.
Re:Ask HN: What is the best way to get into Physics as a coder? on Thursday December 14, 2023 @05:29PM (#38648244)
OpenStax has some free Physics text books: https://openstax.org/
Re:Ask HN: Is There SEO for LLMs? on Thursday December 14, 2023 @12:06AM (#38638003)
Running that query "whats best website for deploying a decentralized site", I observed the web sites that it was referencing. There are a couple of ideas here:

1. One of the sites was dev.to, meaning that is one of the sites that it is crawling. You could write an article there, linking back to your site for more info. Just make sure the article is substantive in case they have an intelligent quality filter. Also, announce the article in social media and in your own circles to bring traffic, which might make it easier for the crawler to find, rather than pass over an article that's at the bottom of the stack because of less interest. Do this for any other sites that show up as references and let you post, though you should write unique articles because you don't want to spam the crawler.

2. Look for any sites that might have link lists. This might be old school, but when everyone was doing their own web sites, we had categorized link lists for related sites. Swapping links was good for everyone's traffic and good for the community.

Also, you might want to put an allow in your robots.txt to ensure you're explicitly inviting the crawler. Here's the details on ChatGPT, though you can learn more about other LLMs by visiting their site:

https://platform.openai.com/docs/gptbot

Essentially, do the research to find sites that are being crawled and try to figure out how to build paths for the crawler to find you in the link graph.

They're currently rolling out Grok, which is the Xai LLM. It's just getting started and might have weaknesses compared to other LLMs out there today. It does have a "Fun Mode" with a different communication style.
There are probably different interpretations of what "culture" means to different people. From a perspective of how people interact to the work done, I (listen for) ask questions about their process, like this:

1. What type of development process do you use. e.g. agile, interative, or waterfall?

Some shops don't have processes at all, which is often a red flag. Be prepared to dig in a little. e.g. if they're agile, you might want to ask if they're Scrum or Kanban, have a backlog, sprints, standups. A lot of places say they do standups, but not much else. If they have a process that they think is working, they're often proud to discuss it.

2. Do you do unit testing?

There are various approaches and you might be able to dig in to find out if they do BDD, TDD, or afterwards. If they don't, it could indicate design issues from non-testable code, strong coupling, hard to find bugs.

3. What are your code reviews like?

Code reviews (properly done) can be a great way to help other people on the team, share info, and generally improve the quality of the code. Lack of code reviews, is a possible red flag that people aren't helping each other on the team and building a common team standard.

4. How good are application requirements and how are they communicated to me?

This could be good or bad, depending on how you look at it. It might be telling if you feel a negative vibe out of the response. That said, it's rare to have developers comfortable with a certain level of ambiguity. It's mostly a data point to see how the interviewers react to an often-contentious subject and gauging how you feel about the response.

Also, be prepared to discuss your experience in any area you bring up because it's common for an interviewer to aim the question back at you.

Re:Ask HN: How can my mom downshift as a SQL developer? on Saturday November 25, 2023 @07:11PM (#38418041)
Maybe reach out to a recruiter or two that might be able to find something. She seems to have a good idea of what she wants, which would be helpful. She might want to avoid the larger firms or ones that are out of country because they're mostly interested in numbers. Smaller local firms and individuals often care about meeting people and finding a good fit.
Re:Ask HN: Retiring as a Programmer at 60 on Wednesday November 22, 2023 @05:23PM (#38386022)
It's a tough market for developers right now. One of things he can do is to peruse job boards, like Indeed, to get a feel for what types of jobs companies are hiring for right now. Another thing is to reach out to recruiting firms to see what type of jobs they're recruiting for too and get any tips on how to prepare.

Also, if that's his dream - he shouldn't give up because today's programming positions are sparse. It could change dramatically in some amount of time. In the past, there have even been weirder anomalies in the market where programmer jobs were plentiful, while other jobs were sparse. The silver lining might be that by identifying where his passion is, he'll have time to be more prepared when the market is ready for him.

I'm thinking about the new jobs that are/will be created.

1. Prompt engineer - there's been a lot of talk about this, though I believe it's more extensive because businesses will need people to educate, manage prompt data stores, and assist with fine tuning.

2. Content management - as companies adopt AI with their own data, someone will need to manage the content going into the system including selection, privacy, and security.

3. Content Moderators - people who write/edit content will need to change their behavior about how the content is created and formatted, making it easier to ingest and lead to higher quality answers.

4. Content Creators - people who create content for the sole purpose of ingestion. This could be within a company, open-source/scientific research, or supporting vertical models.

5. Security Monitors - This is the person-in-the-middle who's watching/monitoring the system for privacy, safety, and security.

There are probably more, though this is what I'm thinking right now.

Re:I Analyzed StackOverflow for Secrets on Friday November 17, 2023 @12:54PM (#38307246)
> I sent both developers an email...

This was a pretty nice thing to do. I see this on SO occasionally and edit the post to remove the secret. While the secret is already out there, it signals to the poster that they should revoke/regen the key and a bit of a reminder to help them avoid doing it again.

Re:Ask HN: I hate remote work, should I leave? on Thursday November 16, 2023 @10:44PM (#38299247)
Some aspects of the economy, such as software development, are hard to find work because of massive recent layoffs. You might do a job search and/or talk to some recruiters before taking the jump. Otherwise, your need for belonging/companionship could be overcome by your need for security.

Also, as other people inferred, management might be a problem. People often leave their jobs because of bad supervisors.

I agree that it's pretty awesome when you get to work with a great team of people, though you might want to watch the risks as you make a next move that is in your best interest.

Assembly language might be interesting. Here's a free e-book, Assembly Language Succinctly, that will give you a quick overview:

https://www.syncfusion.com/succinctly-free-ebooks/assemblyla...

Software component companies have done this for a long time. The subscription is generally for 1 year in includes some level of support and updates during the subscription timeframe. The renewal is often discounted.
Re:Ask HN: Code Reviewers Asserting Dominance on Thursday October 19, 2023 @01:13AM (#37938753)
Generally, reviews should be helpful and move the project forward. Sometimes a discussion is required because disagreements do occur. The appropriate way to handle it is to respond to the comment, explaining your case (rationally and without emotion), allowing the record to reflect the result of the discussion. This is important because it sets a standard and minimizes the opportunity for someone to jerk you around later because the standard was set in an earlier discussion.

That said, it's important to pick your battles and be right on issues that are important to you. I've worked on a lot of different projects. The people who set up the project pick the standards and sometimes that's me. If I arrive on the project later, I typically take the stand of "When in Rome...". Watching the existing team's standards and adapting to that is a good approach most of the time because I'm doing my part to moving the team forward with consistency - and you'll often hear about the value of consistency.

Often, no one is wrong on these things and you just disagree. If you lose, disagree and commit. However, by having these discussions in a healthy way helps you and other learn and can be fun.

Here are a few problems you would have to solve:

1. Domain experience - every business is unique and you need to put a given problem into context to see how a given solution fits the business.

2. Project requirements - most projects have barely intelligible requirements that change regularly - sometimes daily. The person would need to get up-to-speed on what that is.

3. One hour is a short amount of time to understand the task and complete it. The best you could do is try to understand and point someone in the right direction. People aren't machines and the need for flow is real.

4. AI code assistance requires oversight and understanding. You never want to generate code and check in unless you fully understand it. Code hallucination is and will continue to be a problem for the foreseeable future.

That isn't the way I think - everyone is different and each person on the team brings something unique. Although it's good to have confidence, one person thinking they're better than others can be corrosive to team morale.

Here's a tweet from the Prof. Feynman account on X, offering another (if even humorous) perspective:

https://twitter.com/ProfFeynman/status/1709411100046098929

My impression is that the state-of-the-art AI is building models based on existing content and just re-packaging the result in a way that looks intelligent. Please inform me if you are aware of instances where this isn't fully accurate. The code you're seeing generated may have already been written on GitHub or came from a StackOverflow answer. The explanations you get might have come from WikiPedia or some blog post. If people stopped creating content in a specific domain, the AI wouldn't be able to answer any new questions in that domain. If you want to verify this, visit the bing search engine and scroll up to use the ChatGPT search. You'll see that it gives an answer and provides links to sources. If you read those sources, you'll see exactly what I mean because the ChatGPT answer looks nearly identical.

There's also a valid point that you shouldn't copy/paste code from a forum or other source without fully understanding that code and ensuring its correctness. Blindly relying on AI potentially violates that practice. Also, who do you credit the source of the code to because the AI got the code from somewhere else and might not tell you the true origin.

I have heard some rumblings about copyright violation and plagiarism. Clearly there's loss of income for some content creators who advertise because whoever read the ChatGPT answer is unlikely to follow the links, resulting in lost revenue for the original author. So, in addition to the wisdom of senior devs who have tried the AI and are skeptical, there's potential for its use to be diminished via legal means.

We don't know what the future holds and should question everything.

If you think of the market as working in cycles, option 2 won't be a problem. Right now, demand is low and it's okay. On the same note, when the market is hot and employers need to hire, you would naturally raise your standards.

Option 1 is something you might want to do continuously. If you assume that you'll eventually be laid off (market cycle), at least you didn't wait until the last minute to have picked up a few new skills.

Re:Ask HN: Got Recommendations for a Technical Editor? on Friday August 25, 2023 @12:06AM (#37257925)
Here are a few ideas:

1. Do a Linked-In search for technical editors 2. Go on X (Twitter) to find a publisher (e.g. @OReillyMedia) and scan their followers/following lists 3. Visit Amazon.com and search for books similar to what you're trying to write and view their preview pages, which often include copyright info and contributors. Then you can do a search on those people's names on a social media site to make contact. 4. Amazon.com has a self-publishing service and offers resources to help authors in different aspects of the publishing process. I haven't done this and don't know for sure, but there might be a way to join that program and do a search for editors that might want to offer their services.

Re:Ask HN: Do programmers still print code to review? on Tuesday August 22, 2023 @11:44PM (#37231606)
I recall this being necessary on older main frame systems where monitors either didn't exist, there was limited time on a shared console, or you didn't have access at all. However, once we had networks and workstations/PCs there was a decreasing need for paper. I believe that elimination of paper was a long-time goal and good for the environment. As far as code review goes, we have IDE's with incredible navigation, linters, debuggers, unit tests, and amazing environments to submit PRs with diffs and collaboration tools. Also, since we have automated tools that produce a huge amount of automated/generated code in some environments, the thought of printing all of that out feels like a long laborious task.
Re:Ask HN: Thoughts on building an AI Twitter search tool? on Friday August 11, 2023 @01:18PM (#37091195)
X has pretty good documentation, which includes a list of SDKs to work with their API. There are a couple that X produced and several more from the community.

https://developer.twitter.com/en/docs/twitter-api/tools-and-...

I wrote and maintained one of the community libraries for years. However, I'm in a holding pattern, waiting to see what will happen in the future. The API has a free level, but it's only useful in limited scenarios. To actually accomplish what you're trying to do would require a paid subscription. You'll need to match your requirements to their pricing to see if the economics work out.

My initial dilemma with continuing working on my open-source project was whether it was worth it to pay the subscription to maintain an open-source project that I'm providing for free. Also, if hobbyists are priced out, I'm not sure how I feel about providing an open-source project for corporations that can afford the API fees while using my library for free.

I knew very little about Physics before I read a textbook about it on https://openstax.org. The math felt approachable too. Now, I feel like I can get the gist of some of the Physics-related articles that I see.
Re:Human Programmers Will Be Mostly Obsolete in 5 Years on Saturday July 15, 2023 @05:09PM (#36740965)
I'm not sure what I'm missing about these types of predictions because they don't seem to make sense. I'm under the impression that the AI in use are LLMs that are trained on a massive amount of data. For example, Codingspaces is trained on Github repositories. It's humans that create these repositories, many based on new ideas. If companies rely on the AI, rather than developers there will be a lot less developers writing code. Further, there will be a lot fewer new ideas created for the LLM to consume. So, if a company needs to use new ideas and new techniques to innovate, then AI will become less capable over time. Then companies will need developers to do the things that the AI can no longer do. So, how can programmers become obsolete?
Sometimes you have to reframe things to understand why concepts like disagree and commit are important. Concentrating on the "disagree" part focuses on negativity. However, if you look at it from the perspective that it's important for a team to move in the same direction together, that can be a good thing. A related concept is "Pick you battles", because expending too much energy to prove your right on every occasion can be damaging to yourself and your team. People are often more credible when others know they only go to the mat battling for things that really matter to them. I look at it also as the normal give and take in every relationship.
Re:Twitter now requires an account to view tweets on Friday June 30, 2023 @07:37PM (#36544127)
There might be a couple sides to the story if one was to view from a less emotional perspective. People who genuinely enjoy reading the site, but value their privacy have a good argument because now they've been denied their rights. On the other hand, there's always been a serious problem with bots scraping the site, which drives up costs. Another consideration is that they're trying to make the company profitable and sign-ins is a measurable metric for advertising and possibly being able to weed out some bad actors. Whether that will work out the way they intend remains to be seen.
Some of the pros are that you aren't pulled into company meetings and non-work-related tasks. You don't have a moonlighting clause and can work for as many customers as you want. You can negotiate provisions into the contract that you're interested in, like number of hours and contract length. You buy your own equipment and software and (most of the time) don't have to use the customer's old equipment. You schedule your own vacation and time-off (though it's polite to coordinate when you'll be on vacation). If you find yourself working with people you don't like, you can find another contract when this one is over and there isn't a job hopping penalty. You pick your own benefits.

Some cons, which might also be pros, are that you're running your own business and need to wear all of the hats. You manage your own payroll, buy your own supplies, and maintain your own benefits. You have to regularly find new work. You have to negotiate your own contracts and deal with customers who violate the terms. You do your own invoices and must ensure that the customer pays you. Sometimes, working through a recruiter can make some of this easier, but there are trade-offs where the recruiter wants to treat you like an employee too. You'll need to plan for gaps between work, meaning that you need to set aside funds in the business so that you can continue making payroll.

I've been independent for several years and it's worked out well for me. That said, everyone is different and it's good to get multiple opinions to compare with how it might fit your personal situation. I read books, talked to other people, and did a lot of research before taking the plunge.

Older »