Don’t get me wrong. Python’s popularity is still backed by a rock-solid community of computer scientists, data scientists and AI specialists.
But if you’ve ever been at a dinner table with these people, you also know how much they rant about the weaknesses of Python. From being slow to requiring excessive testing, to producing runtime errors despite prior testing — there’s enough to be pissed off about.
Which is why more and more programmers are adopting other languages — the top players being Julia, Go, and Rust. …
Medium’s largest publication is The Startup, with more than 700,000 followers. Hundreds of thousands of people who are curious about startups, have created one themselves or plan to build one in the future.
Hundreds of thousands of people who want to change the world in a myriad of ways. Hundreds of thousands of people with a vision and the motivation to work for it. Hundreds of thousands of people who want to reinvent things.
Entrepreneurs, so the story goes, are a rare species. According to that story, most people enjoy the comfort of their corporate jobs and their steady salaries too much to even consider taking the leap to entrepreneurship. …
Corporations are going through rough times. And I’m not talking about the pandemic and the stock market volatility.
The times are uncertain, and having to make customer experiences more and more seamless and immersive isn’t taking off any of the pressure on companies. In that light, it’s understandable that they’re pouring billions of dollars into the development of machine learning models to improve their products.
But there’s a problem. Companies can’t just throw money at data scientists and machine learning engineers, and hope that magic happens.
The data speaks for itself. As VentureBeat reports, around 90 percent of machine learning models never make it into production. In other words, only one in ten of a data scientist’s workdays actually end up producing something useful for the company. …
Fail fast, fail early — we’ve all heard the motto. Still, it’s frustrating when you’ve written a beautiful piece of code, just to realize that it doesn’t work as you’d expected.
That’s where unit tests come in. Checking each piece of your code helps you localize and fix your bugs.
But not all bugs are created the same. Some bugs are unexpected, not obvious to see at all, and hard to fix even for experienced developers. These are more likely to occur in large and complex projects, and spotting them early can save you a ton of time later on.
Other bugs are trivial, like when you’ve forgotten a closing bracket or messed up some indentations. …
Python is my bread-and-butter, and I love it. Even though I’ve got some points of criticism against the language, I strongly recommend it for anybody starting out in data science. More experienced people in the field tend to be Python-evangelists anyway.
However, this doesn’t mean that you can’t challenge the limits in your field from time to time, for example by exploring a different programming paradigm or a new language.
Science is messy. That’s why there’s some truth to the cliché of the scatterbrained professor. Not all scientists are like that, of course, but new theories and ideas are often birthed from downright chaos.
At the same time, many scientists are very clean and diligent when it comes to everyday tasks like keeping their desks tidy or their email inboxes uncluttered. This may sound paradoxical, but it really isn’t. All that mental mess needs to be managed somehow, and orderliness is a good strategy for keeping it contained within clear boundaries.
They set those boundaries by insisting on tidiness for anything that’s related to, but not directly part of, the mess that is science. That includes emails or the classes they teach, but also the experimental apparatuses they employ and any other tools they’re using. …
Data nerds, computer geeks, science morons, I’m speaking to you. It’s the ever-prevailing cliché: the antisocial introverts who spend their days hacking away at some nerdy project that nobody understands. The freaks that push the frontiers of tech every day but still can’t keep up with the Kardashians.
The cliché goes further. If techies lack basic human skills like communicating effectively or cracking a funny joke, then they won’t make good managers. And don’t even think of appointing such people as a CEO.
Of course, this is a stereotype. Most techies I know — including myself — are interesting, multi-faceted people with exciting hobbies and beautiful personalities. Most techies I know score as high in human skills as they do in their area of technical expertise. …
In 1930, John Maynard Keynes predicted that we’d be having 15-hour workweeks by the end of the century. But by the time it was 2013, it was clear that the great economist had gotten something wrong.
Welcome to the era of bullshit jobs, as anthropologist David Graeber coined it. Since the 1930s, whole new industries have sprung up, which don’t necessarily add much value to our lives. Graeber would probably call most jobs in software development bullshit.
I don’t share Graeber’s opinion, especially when it comes to software. But he does touch an interesting point: as more and more processes are automated, most jobs are obsolete at some point. According to one estimate, 45 percent of all jobs could be automated using current technology. …
Programming in the 1960s had a big problem: computers weren’t that powerful yet, and somehow they needed to split the capacities between data structures and procedures.
This meant that if you had a large set of data, you couldn’t do that much with it without pushing a computer to its limits. On the other hand, if you needed to do a lot of things, you couldn’t use too much data or the computer would take forever.
Then Alan Kay came around in 1966 or 1967 and theorized that one could use encapsulated mini-computers that didn’t share their data, but rather communicated through messaging. …
A new type of computer threatens to shatter today’s security protocols, no matter how sophisticated. Quantum computers are on the brink of maturity, and they’re so powerful that they can solve complex mathematical problems in minutes that would take thousands of years for classical computers.
Solving such problems could help make immense progress in every area of human endeavor, from uncovering the mysteries of the universe to improving finance instruments to finding breakthroughs in cancer research. Unfortunately, they’re also the kind of problems that the encryption methods of today rely on. …