Tag: programming

  • JavaScript Runs the World—Maybe Even Literally

    JavaScript Runs the World—Maybe Even Literally

    [ad_1]

    Lex Fridman has done many long interviews on his popular podcast. Even so, the episode with the legendary programmer John Carmack has an unhinged director’s-cut feel to it. Over five hours, Carmack dishes on everything from vector operations to Doom. But it’s something Fridman says, offhand, that really justifies the extended run time: “I think that if we’re living in a simulation, it’s written in JavaScript.”

    To review: JavaScript is what makes static web pages “dynamic.” Without it, the internet would resemble nothing so much as an after-hours arcade, lifeless and dark. These days, the language is used in both front- and backend development for a whole host of mobile platforms and apps, including Slack and Discord. And the main thing to understand about it, in the context of Fridman’s nerdy koan, is this: For any self-respecting programmer, admitting to actually liking JavaScript is something of a faux pas—much like an art-house filmmaker confessing to Marvel fandom.

    I suppose this has something to do with the fact that JavaScript was created in less time than it takes to home-brew a jar of kombucha: 10 days. In 1995, Netscape hired a programmer named Brendan Eich to create a language to embed in its browser, Netscape Navigator. Originally called LiveScript, the language was renamed JavaScript to piggyback on the hype around an unrelated language called Java, which had been introduced earlier that year. (Asked the difference between Java and JavaScript, a programmer is likely to joke: “Java is to JavaScript what car is to carpet.”) To this day, few people consider JavaScript a particularly well-designed language, least of all Eich. “I perpetrated JavaScript in 1995,” he once said, “and I’ve been making up for it ever since.”

    What was his crime, exactly? You can easily find scads of blog posts, memes, and Reddit threads sandbagging JavaScript, but my favorite is a four-minute talk by software engineer Gary Bernhardt titled “Wat.” Imagine, for starters, showing a group of non-English speakers the present and past forms of verbs like boil (boil/boiled) and chew (chew/chewed). Then, when you ask them for the conjugation of eat, who could blame them for answering eat/eated? Similarly, the “Wat” talk is a blooper reel of JavaScript’s quirks and unpredictable behaviors. Let’s say you want to sort a list of numbers: [50, 100, 1, 10, 9, 5]. Calling the built-in sort function in any sane language returns the list in numerically ascending order: [1, 5, 9, 10, 50, 100]. Doing so in JavaScript returns [1, 10, 100, 5, 50, 9], where 10 and 100 are considered larger than 5. Why? Because JavaScript interprets each number as a string type and does lexical sorting, not numerical sorting. Total insanity.

    When Fridman says JavaScript runs the world, in other words, what he means is that our world is, like the underlying source code, massively screwed up and incomprehensible. It’s the equivalent of pronouncing, with a sigh, that considering the sorry state of the planet, the Universal Declaration of Human Rights must have been written in Comic Sans.

    At this point, I should confess that while JavaScript is not my favorite language, I like it. Adore it, in fact. So I can’t help but feel a flare of disapproval whenever a certain fraternity of programmers polemicizes against it. Often they focus on flaws that were dealt with years ago. To dwell on JavaScript’s original shortcomings is to overlook the fact that any piece of software—and every programming language is, in essence, a suite of software—is amenable to revision and improvement.

    [ad_2]

    Source link

  • Google’s Deal With StackOverflow Is the Latest Proof That AI Giants Will Pay for Data

    Google’s Deal With StackOverflow Is the Latest Proof That AI Giants Will Pay for Data

    [ad_1]

    Last year Stack Overflow became one of the first websites to announce it would charge AI giants for access to content used to train chatbots. Now the popular Q&A service for coders has signed up its first customer—Google—in what CEO Prashanth Chandrasekar says is the start of a “meaningful” new stream of revenue.

    The deal is significant, because it remains unclear how broadly Google and other AI developers will pay for content needed for AI projects. Millions of books and websites have fueled the development of AI systems, but most publishers have not been compensated, and some are suing over what they allege is misuse. Many publishers, including Stack Overflow, appear threatened by ChatGPT and other generative AI products, which can answer queries that would have previously sent coders their way.

    The deal will see Google’s cloud division use questions and answers from Stack Overflow about Google Cloud services to provide coding assistance and technical support through a version of Google’s Gemini chatbot. Google’s cloud computing customers will also be able to ask questions through Google Cloud’s command-line interface. “Their AI may not have all the answers, and so we have a huge ability to help complete that loop,” Chandrasekar says. “We are the biggest place where community knowledge is curated and validated.”

    Gemini will summarize answers drawn from Stack Overflow in its own words but include the company’s logo, a link back to the original material, and the username of the site contributor who supplied it. The companies plan to demonstrate the system at Google Cloud Next, the search company’s annual cloud conference in April, and launch it soon after.

    Chandrasekar says there are no significant restrictions on how Google Cloud can use Stack Overflow data, meaning it can be used to train large language models and other AI systems. “Where we want to stand firm on is—nonnegotiable things for us— trust, accuracy, quality, and attribution back to the sources of these AI outputs,” he says.

    He declined to say how much Stack Overflow is being paid by Google for the data. “This will be a meaningful commercial offering for us in the near term, medium term, and long term,” Chandrasekar says.

    Covert Scraping

    Google and other AI developers have previously gathered data from Stack Overflow and other websites without much notice. As demand for generative AI technologies has surged—and the valuations of the companies developing them has rocketed—the websites supplying the foundational text have begun demanding what they view as their fair share. Fortunately for Stack Overflow, prospective customers have heeded the message, Chandrasekar says. “We’re not having to chase people,” he says.

    Stack Overflow data is particularly beneficial to AI systems that generate computer code, which have proven to be popular with software engineers and a significant source of revenue for Microsoft and OpenAI.

    The new Stack Overflow deal comes just a week after Google reached a licensing agreement to hoover up data from Reddit, the discussion forums operator, whose content has helped chatbots’ ability to converse. Reddit had unveiled plans to start charging for data access just before Stack Overflow had last year.

    [ad_2]

    Source link

  • Tech Job Interviews Are Out of Control

    Tech Job Interviews Are Out of Control

    [ad_1]

    Bock says the shift is partly due to mass layoffs; employers are more able to flex their muscles in a tighter labor market. But there’s also a broader psychological shift. “After years of tech workers being pampered, of ‘bring your whole selves to work’ and ‘work from anywhere,’ executives are now overcompensating in the other direction,” he says.

    The upshot for job-seeking coders is confusion, culture shock, and hours of work done for free. Buzz Andersen, who has held engineering roles at Apple, Square, and Tumblr, recently hit the job market again. He noted on Threads last month, “Tech industry job interviews have, of late, reached a new level of absurdity.”

    Coding Olympics

    Last year an estimated 260,000 workers were let go across 1,189 tech companies, according to a live-update layoff tracker called Layoffs.fyi. And the layoffs have continued into 2024, forcing a glut of talent into an already competitive market. An estimated 41,000 tech workers have been laid off so far this year.

    Of course, not all of the tech workers losing their jobs are engineers. Engineers are often still seen as a privileged class within tech companies and the wider economy. Typically they’re the highest-paying class of workers below the C-suite in tech companies. Aline Lerner, who runs a popular interviewing practice platform called Interviewing.io, believes that the total number of engineering layoffs last year was closer to 15,000.

    Data from Interviewing.io backs up job seekers’ claims that the bar for technical interviewing has gotten quantifiably higher. Interviewing.io connects people willing to pay $225 or more for interview practice with experienced hiring managers. These managers conduct mock interviews and then provide detailed feedback. Over the past eight years Lerner’s company has recorded thousands of grades from these encounters. Interview subjects are graded not just on their technical interviews, but also behavioral interviews, which focus on problem-solving and communication.

    Since 2022, scoring a “thumbs up” on a technical interview has gotten more difficult by an estimated 22 percent, Lerner says. “It’s a very very clear trend,” she says. “And it’s not just interviews at a few Big Tech companies. It’s happening across many tech companies.”


    Got a Tip?

    Do you work in the tech industry and have experiences with job hunting or work that you’d like to share? Contact Lauren Goode at [email protected].

    On the app Blind, an anonymous gossip app where the truth might be elastic but industry trends often emerge, some tech workers say interviews feel “practically impossible.” One user wrote in early February that the bar for getting hired at one of the Big Tech firms is “two LeetCode medium/hard [tests] within 40 minutes and most of my friends failed,” referring to an oft-used online programming platform.

    Another worker complained on Blind that preparing for LeetCode questions requires “hundreds of hours” of preparation: “Why are we expected to do the coding Olympics for every company that wants to interview you?” An engineer who became a manager at Dropbox and is now a director in the telecom industry tells WIRED that in his own past job hunting experience, he felt compelled to collect and write over 100 pages of coding material and potential questions before interviews.

    [ad_2]

    Source link

  • AI Tools Like GitHub Copilot Are Rewiring Coders’ Brains. Yours May Be Next

    AI Tools Like GitHub Copilot Are Rewiring Coders’ Brains. Yours May Be Next

    [ad_1]

    Many people—like, say, journalists—are understandably antsy about what generative artificial intelligence might mean for the future of their profession. It doesn’t help that expert prognostications on the matter offer a confusing cocktail of wide-eyed excitement, trenchant skepticism, and dystopian despair.

    Some workers are already living in one potential version of the generative AI future, though: computer programmers.

    “Developers have arrived in the age of AI,” says Thomas Dohmke, CEO of GitHub. “The only question is, how fast do you get on board? Or are you going to be stuck in the past, on the wrong side of the ‘productivity polarity’?”

    In June 2021, GitHub launched a preview version of a programming aid called Copilot, which uses generative AI to suggest how to complete large chunks of code as soon as a person starts typing. Copilot is now a paid tool and a smash hit. GitHub’s owner, Microsoft, said in its latest quarterly earnings that there are now 1.3 million paid Copilot accounts—a 30 percent increase over the previous quarter—and noted that 50,000 different companies use the software.

    Dohmke says the latest usage data from Copilot shows that almost half of all the code produced by users is AI-generated. At the same time, he claims there is little sign that these AI programs can operate without human oversight. “There’s clear consensus from the developer community after using these tools that it needs to be a pair-programmer copilot,” Dohmke says.

    Copilot’s power is in how it abstracts away complexity for a programmer trying to work through a problem, Dohmke says. He likens that to the way modern programming languages hide fiddly details that earlier, lower-level languages required coders to wrangle. Dohmke adds that younger programmers are particularly accepting of Copilot, and that it seems especially helpful in solving novice coding problems. (This makes sense if you consider that Copilot learned from reams of code posted online, where solutions to beginner problems outnumber examples of abstruse and rarified coding craft.)

    “We’re seeing the evolution of software development,” Dohmke says.

    None of that means demand for developers’ labor won’t be altered by AI. GitHub research in collaboration with MIT shows that Copilot allowed coders faced with relatively simple tasks to complete their work, on average, 55 percent more quickly. This increase in productivity suggests that companies could get the same work done with fewer programmers, but companies could use those savings to spend more on labor in other projects.

    Even for non-coders, these findings—and the rapid uptake of Copilot—are potentially instructive. Microsoft is developing AI Copilots, as it calls them, designed to help write emails, craft spreadsheets, or analyze documents for its Office software. It even introduced a Copilot key to the latest Windows PCs, its first major keyboard button change in decades. Competitors like Google are building similar tools. GitHub’s success might be helping to drive this push to give everyone an AI workplace assistant.

    “There’s good empirical evidence and data around the GitHub Copilot and the productivity stats around it,” Microsoft’s CEO, Satya Nadella, said on the company’s most recent earnings call. He added that he expects similar gains to be felt among users of Microsoft’s other Copilots. Microsoft has created a site where you can try its Copilot for Windows. I confess it isn’t clear to me how similar the tasks you might want to do on Windows are to the ones you do in GitHub Copilot, where you use code to achieve clear objectives.

    There are other potential side effects of tools like GitHub Copilot besides job displacement. For example, increased reliance on automation might lead to more errors creeping into code. One recent study claimed to find evidence of such a trend—although Dohmke says that it reported only a general increase in mistakes since Copilot was introduced, not direct evidence that the AI helper was causing an increase in errors. While this is true, it seems fair to worry that less experienced coders might miss errors when relying on AI help, or that the overall quality of code might decrease thanks to autocomplete.

    Given Copilot’s popularity, it won’t be long before we have more data on that question. Those of us who work in other jobs may soon find out whether we’re in for the same productivity gains as coders—and the corporate upheavals that come with them.

    [ad_2]

    Source link