• 16 Posts
  • 23 Comments
Joined 2 years ago
cake
Cake day: June 9th, 2023

help-circle
  • I’m curious about what do you mean by “cheapest options”. Do you remember how much you were paying then?

    IIRC, StackOverflow Careers kind of established the price per posting around $300. After they came up every other job posting site was charging around that.

    For CareerCupid, I want to make a single flat rate of $89/month and let companies make as many job listings as they want. I think that the value for a company should not be in charging per posted job, but to give them access to the whole database in a way that can help them make hiring decisions directly.

    I get why they resorted to buying all this AI fuckery to try to more aggressively filter resumes.

    I get it as well, but I think that this “send us your resume” and we will judge you based on it is such an outdated concept we could get rid of it entirely.

    Imagine if we got something like Wikidata applied to the “professional social network” graph of the whole world. If “let’s set out to build a map of all the ~2 billion people who are economically active” was somewhat impossible to think about 20 years ago, today it’s the kind of project that can be easily managed on modest infrastructure.


  • I completely agree.

    (I want to try something different here. Instead of a fully fleshed out post, I’d like to just start with a draft of some ideas and I hope that it is enough to generate a conversation. I’ll take the relevant responses and use them to keep improving this article)

    But if you were so eager to give feedback, perhaps you could’ve started with something more productive than yet-another smutty comment that serves only to make you feel better than the plebs who use and get any value out of ChatGPT?








  • rglullis@communick.newsOPtoProgramming@programming.devBaby unit tests
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    8 months ago

    Imagine if OSes in the 90s crashed as rarely as desktop OSes today. Imagine if desktop OSes today crashed as rarely as mobile OSes today. Imagine if mobile OSes crashed rarely enough that the average consumer never experienced it. Wouldn’t that be a better state of things overall?

    Depends. What is the cost to get there? Will that sacrifice openness? Will that sacrifice portability? Will that require ossified structures that will make development of new applications more difficult?

    Look, the article is talking from the perspective of someone who is developing web apps in Ruby. Performance is not a huge concern. Processes being crash-proof are not a concern. You know what is the concern? To be able to validate ideas and have something that bring customers willing to pay real money to solve their real problems.

    For his scenario, forcing to define everything up front is a hindrance, not a benefit. And having GP screaming at it like this for having this opinion is beyond ridiculous.


  • I don’t really want to be talking past each other. The point I am refuting is that even if type-safety can help reduce the amount of bugs shipped, this is not the only metric that matters to measure the value of the software being developed.

    bugs are really annoying

    And being late or never delivering out of fear of shipping buggy code is even worse.

    Some years ago, I worked on a crypto project that was financed via an ICO. This meant that whatever money the company was going to get was already in their hands, and their only job was to make sure they could prove they’ve done a best effort to deliver what was promised to investors.

    Because of these incentives, the engineers were more concerned about covering their asses regarding bugs than to actually get the software out in the hands of users. The implementation was in python, and to the team it was easier to justify spending time on getting 100% mypy coverage than to get things in hands of users to see the value of what we promised to deliver.

    In the end, by the time the team managed to deliver, the code was super well-tested, there were 0 mypy warnings and absolutely zero interest from other people in adopting our tool because other competitors have launched a whole year before them.


  • How many billion dollar companies were built on dynamically typed languages? Do you think that companies/bosses/investors care about the compiler warnings or whether you can deliver/iterate faster than the competition?

    nobody likes plumbing, but we all know it’s necessary.

    Is it, really? Are we all working on mission critical software? We are living in a world where people are launching usable applications with nothing but the prompt to an LLM, ffs, and you are there trying to convince yourself that pleasing the Hindley-Milner gods is fundamental requirement in order to deliver anything?

    Good engineering is about understanding design constraints and knowing where to choose in a myriad of trade-offs. It’s frankly weird to think that such an absolute, reductionist view like yours got so much support here.










  • Organizations that feel that they desperately need to take that risk, are doing it because they disrespect their team’s time.

    Or they are aware they are not in a position to block deployments for 60 hours every week? I’ve felt more discouraged working at companies that blocked Friday deployments because “it could wait until Monday”, and then when Monday came half of the team was blocked or waiting for some new data report that could have been running during the weekend.

    It can be the smallest risk in the world, but it’s still a risk.

    And it’s up to the Engineering manager (or at least the Release Manager in places where that role still exists) to evaluate what would be the trade-off. If you say that a bug coming from a Thursday deployment could’ve waited until Monday, why can’t a bug that has come from a Friday deployment?

    I guess my issue is not in saying “Some things should not be deployed on a Friday”, but with the generalization. Of course there are things that should be okay to deploy on a Friday, or a Thursday night, or when the manager is on vacation… Being strict about it seems anything but “respect for the team”, but a general distrust of the people and the process.


  • Every change that isn’t already an active disaster recovery can wait for Monday.

    I honestly fail to see the difference between “don’t deploy on Friday if this can wait until Monday” and “don’t deploy on the evening if it can wait until the next morning”.

    The idea of CD is that changes are small and cheap. No one is saying “it’s okay to push huge PRs with huge database migrations on a Friday”, what is being said is “if your team is used to ship frequently and incrementally, it won’t matter when you ship and your risk will always be small.”





  • The author ended up creating a strawman. Allen’s argument was pretty clear: if your deltas are small and your deploy system is fully automated, then no one should be afraid of the risk of deploying.

    Given that, if I deploy on a Monday morning and there is a bug on the new release, you revert, reproduce the issue in staging and push only new code when it is fixed. Same thing if I were deploying on a Thursday afternoon or a Friday at 7PM.