• “As we’ve said, we’re responsibly investing in our company’s biggest priorities and the significant opportunities ahead,” said Google spokesperson Alex García-Kummert. “To best position us for these opportunities, throughout the second half of 2023 and into 2024, a number of our teams made changes to become more efficient and work better, remove layers, and align their resources to their biggest product priorities. Through this, we’re simplifying our structures to give employees more opportunity to work on our most innovative and important advances and our biggest company priorities, while reducing bureaucracy and layers”

    There was this incredible management consultant in france in the 18th century. Name eludes me, but if he was still around Google could hire him and start finding some far more convincing efficiencies.

    The guy was especially good at aligning resources to remove layers

        • You do, but considering the scales they process data I suspect Google would be better building Go tooling (or whatever the dominate internal language is).

          A few years back I was trying to teach some graduates the importance of looking at a programming language ecosystem and selecting it based on that.

          One of my comparison projects was Apache OpenNLP/Camel vs Flask/Spacy.

          Spacy is the go to for NLP, I expected it to be either quicker to develop, easier to use, better results or just less resources.

          I assigned Grads with Java experience Spacy and Python experience OpenNLP.

          The OpenNLP guys were done first, they raved about being able to stream data into the model and how much simplier it made life.

          When compared with the same corpus (Books, Team emails, corporate sharepoint, dev docs, etc…) OpenNLP would complete on 4GiB of RAM in less than a second on 0.5vCPU. Spacy needed 12GiB and was taking ~2 seconds with 2vCPU. They identified the same results…

          Me and a few others ended up spending a day reading the python and trying to optimise it, clearly the juniors had done something daft, they had not.

          It rather undermined my point.

          • I don’t know how you could make a server faster than with flask honestly (which I guess is similar to spacy ?), so these results are very surprising. Especially against java, java is so freaking verbose.

            • It was a mixture of factors.

              Data was to be dumped into a S3 bucket (minio), this created an event and anouther team had built an orchestrator which would do a couple of things but eventually supply an endpoint a reference to a plain/txt file for analysis.

              For the Java devs they had to [modify the example camel docs.](https://camel.apache.org/manual/rest-dsl.html) and use the built in jackson library to convert the incoming object to a class. This used the default AWS S3 api to create a stream handle which fed into the OpenNLP docs. .

              The Python project first hit a wall in setting up Flask. They followed the instructions and it didn’t work from setup tools. The Java team had just created a new maven project from the Intelij but the same approach didn’t work for the Python team using pycharm. It lost them a couple days, I helped them overcome it.

              Then they hit a wall with Boto3, the team expected to stream data but Boto3 only supports downloading, there was also a complexity issue the AWS SDK in Java waa about 20 lines to setup and a single line to call, it was about 50 lines in Python. On the positive side I got to explain what all the config meant in S3.

              This caused the team anouther few days of delay because the team knew I used a 350MiB Samsung TV guide to test the robustness and had to go learn about Docker volume mounting and they thought they needed a stateful kubernetes service and I had to explain why that was wrong.

              Basically Python threw up a lot of additional complexity and the docs weren’t as helpful as they could have been.

              • I am not familiar with AWS apis. Probably Java was more suitable for this task then, as it often comes down to how good the documentation and tutorials are for the task and how many people use it. Like you said bad documentation is a big issue.

                I can also see how they could struggle with python dependencies, which I guess is the reason why they struggled setting up flask. With a java project you can just nuke everything from scratch and reinstall the correct compatible packages. But with python global dependencies (without env) you cannot get around the issue like that. That makes it harder for beginners. (But for intermediate give me anything but maven please).

                Maybe Python flask wasn’t’t the tool for the task here, but I still think it’s overall better and especially faster to use for most things.

  •  Artyom   ( @Artyom@lemm.ee ) 
    link
    fedilink
    11
    edit-2
    5 months ago

    I spent thr last 10 minutes reading the flutter docs, and I have no fucking idea what it is, what language it is written in, or generally anything useful about it. I think we’ll be fine.

    Also, Google’s contributions to Python are mostly obsolete. optparse was replaced by argparse which is .mostly replaced by click. Yapf was never successful and black has taken a commanding lead. Python will be just fine.

    • I typed in “python flutter” into Google and clicked on the first link. The first pictures shows a bit of code and a simple window with two buttons. I go back to the code and skim it. It defines the buttons. How you cannot deduce from that, that this library makes UI says a lot about you.
      I also think your assumption that click replaced argparse is wrong. Click heavily relies on decorators which makes separation of functional code and command line interface code either impossible or difficult. If you only care about your one program that is fine, but it does make your code not very reusable.

  • Looks like my Lemmy-client of choice did some retrying when I had poor connection, sorry about that.

    I think trying to go cheap on native apps was always kind of a fool’s errand, tbh. Cordova, Xamarin, React Native and so on - all pretty sub-par solutions leading to poor experience without actually materializing the desired savings.

  • This is the best summary I could come up with:


    Ahead of Google’s annual I/O developer conference in May, the tech giant has laid off staff across key teams like Flutter, Dart, Python and others, according to reports from affected employees shared on social media.

    “As we’ve said, we’re responsibly investing in our company’s biggest priorities and the significant opportunities ahead,” said Google spokesperson Alex García-Kummert.

    “To best position us for these opportunities, throughout the second half of 2023 and into 2024, a number of our teams made changes to become more efficient and work better, remove layers, and align their resources to their biggest product priorities.

    Through this, we’re simplifying our structures to give employees more opportunity to work on our most innovative and important advances and our biggest company priorities, while reducing bureaucracy and layers,” he added.

    Meanwhile, others shared on Y Combinator’s Hacker News, where a Python team member detailed their specific duties on the technical front and noted that, for years, much of the work was done with fewer than 10 people.

    WARN, or the California Worker Adjustment and Retraining Notification Act, requires employers with more than 100 employees to provide 60-day notice in advance of layoffs.


    The original article contains 700 words, the summary contains 191 words. Saved 73%. I’m a bot and I’m open source!