×
Social Networks

As Reddit CEO Defends Their Controversial API Decision, It Dominates Reddit's Own 'Recaps' (fastcompany.com) 52

"Reddit CEO Steve Huffman says that he stands by the company's decision to charge for API access," writes the blog 9to5Mac, "despite the fact that it was massively unpopular, and led to the demise of the leading Reddit app, Apollo." In an interview with FastCo, Huffman is unrepentant about the API decision, but says it could have been better communicated... "[H]e defended the company's decision to limit free access to its API as a necessary measure to foil AI-training freeloaders. 'Reddit is an open platform, and we love that,' he told me. 'At the same time, we have been taken advantage of by some of the largest companies in the world.'"
The incident ended up reappearing in Reddit's own "recap" pages showing highlights from its popular subreddits. For its Technology subreddit, the official recap shows that two most popular posts were "Apollo for Reddit is shutting down" and "Reddit sparks outrage after a popular app developer said it wants him to pay $20 million a year for data access."

And Reddit's official recap also shows that discussion leading to the second-most popular comment of the entire year for the subreddit. "Users supply all the content, and reddit turns around with this huge fuck you to its users, without whom it's just another crappy link aggregator. No, reddit, fuck you and your money grab."

The first most-popular comment appeared in a related discussion, headlined "Reddit Threatens to Remove Moderators From Subreddits Continuing Apollo-Related Blackouts." The comment?

Reddit: You're fired!
Moderator: I don't even work here.


The topic also dominated the official recap for the Programming subreddit, where it was the subject of all three of the top comments — and all three of the year's top posts:

Ironically, FastCo headlined its interview "As the AI era begins, Reddit is leaning into its humanity." ("Rebellious moderators. Large language models' peril and promise. Maybe a long-awaited IPO. Amid it all, Reddit CEO Steve Huffman says the web megacommunity is on a roll.") Other work has addressed concerns that bubbled to the surface during the moderator dust-up, such as accessibility issues: "I told the team, 'Just show up and ship,'" Huffman says. The official Reddit apps are finally compatible with screen readers used by users with vision impairments, with full compliance with the World Wide Web Consortium's accessibility guidelines planned by the end of 2024.

As for AI's potential to transform the Reddit experience, Huffman is less prone to exuberant overpromising than the average tech company CEO. But the same attributes that led third-party assemblers of large language models to crave access to the company's corpus of information could help it leverage the technology to its own benefit... Rather than involving the most obvious AI functionality, like a Reddit chatbot, the examples he provides relate to moderation of problem content. For instance, the latitude that individual moderators have to govern their communities means that they can set rules that Huffman describes as "sometimes strict and sometimes esoteric." Newbies may run afoul of them by accident and have their posts yanked just as they're trying to join the conversation. In response, Reddit is currently prototyping an AI-powered feature called "post guidance." It'll flag rule-violating material before it's ever published: "The new user gets feedback, and the mod doesn't have to deal with it," says Huffman. He adds that Reddit will also use AI to crack down on willful bad behavior, such as bullying and hate speech, and that he expects progress on that front in 2024...

Members already engage in acts of commerce such as tipping Photoshop wizards to remove ex-boyfriends from images; he says the company plans to facilitate these transactions with a payment system "that will basically involve users sending money to users, whether it's rewarding them for content or paying for digital services or digital goods or [physical] services." "People are trying to start businesses on Reddit, but it wasn't really built for that," he adds. "So just trying to flesh out that ecosystem, I think that'll be very powerful."

Businesses

IBM To Buy Software AG's Enterprise Integration Platforms For $2.3 Billion 11

An anonymous reader quotes a report from Reuters: IBM said on Monday that it would buy Software AG's enterprise integration platforms for 2.13 billion euros ($2.33 billion) to bolster its artificial intelligence and hybrid cloud offerings. IBM will acquire Software AG's StreamSets and webMethods platforms with available cash on hand, it said. The two units formed Software AG's so-called "Super Ipaas" business, which was launched in October.

The platforms provide application integration, application programming interface (API) management, and data integration among other uses. Software AG is majority owned by private equity firm Silver Lake, which currently owns 93.3% of shares in the German software company, following a takeover pursuit spanning several months. That deal valued the whole business at 2.6 billion euros ($2.84 billion). The transaction is subject to regulatory approvals and is expected to be completed in the second quarter of 2024.
"The opportunity to bring the StreamSets and webMethods teams together with IBM to innovate in building the future of hybrid cloud and next-generation AI solutions for the enterprise is uniquely compelling," Christian Lucas, chairman of the supervisory board of Software AG said in a statement.
Christmas Cheer

2023's Online 'Advent Calendars' Challenge Programmers With Tips and Puzzles 8

It's a geek tradition that started online back in 2000. Programming language "advent calendars" offer daily tips about a programming language (if not a Christmas-themed programming puzzle) -- one a day through December 25th.

And 2023 finds a wide variety of fun sites to choose from:
  • li>For example, there's 24 coding challenges at the Advent of JavaScript site (where "each challenge includes all the HTML and CSS you need to get started, allowing you to focus on the JavaScript.") And there's another 24 coding challenges on a related site... Advent of CSS.
  • The cyber security training platform "TryHackMe.com" even coded up a site they call "Advent of Cyber," daring puzzle-solvers to "kickstart your cyber security career by engaging in a new, beginner-friendly exercise every day leading up to Christmas!"
  • Every year since 2000 there's also been a new edition of the Perl Advent Calendar, and this month Year 23 started off with goodies from Perl's massive module repository, CPAN. (Specifically its elf-themed story references the Music::MelodicDevice::Ornamentation module) -- along with the MIDI::Util library and TiMidity++, a software synthesizer that can play MIDI files without a hardware synthesizer.)
  • The HTMHell site â" which bills itself as "a collection of bad practices in HTML, copied from real websites" -- is celebrating the season with the "HTMHell Advent Calendar," promising daily articles on security, accessibility, UX, and performance.
Programming

Creator of JSON Unveils New Programming Language 'Misty' (crockford.com) 157

He specified the JSON notation, and developed tools like JSLint and the minifier JSMin. His Wikipedia entry says he was also a senior JavaScript architect at PayPal — but he's probably better known for writing O'Reilly's book JavaScript: the Good Parts.

But Doug Crockford has a new challenge. O'Reilly's monthly tech newsletter says Crockford "has created a new programming language called Misty. It is designed to be used both by students and professional programmers."

The language's official site calls it "a dynamic, general-purpose, transitional, actor language. It has a gentle syntax that is intended to benefit students, as well as advanced features such as capability security and lambdas with lexical scoping..." The language is quite strict in its use of spaces and indentation. In most programming languages, code spacing and formatting are underspecified, which leads to many incompatible conventions of style, some promoting bug formation, and all promoting time-wasting arguments, incompatibilities, and hurt feelings. Misty instead allows only one convention which is strictly enforced. This liberates programmers to focus their attention on more important matters.

Indentation is in increments of 4 spaces. The McKeeman Form is extended by three special rules to make this possible:


indentation
The spaces required by the current nesting.

increase_indentation
Append four spaces to the indentation.

decrease_indentation
Remove four spaces from the indentation.


The indentation is the number of spaces required at the beginning of a line as determined by its nesting level.


indent
increase_indentation linebreak

outdent
decrease_indentation linebreak


The linebreak rule allows the insertion of a comment, ends the line, and checks the indentation of the next line. Multiple comments and blank lines may appear wherever a line can end.

Christmas Cheer

Amazon, Etsy, Launch Categories With 'Gifts For Programmers' (thenewstack.io) 20

Long-time Slashdot reader destinyland writes: It's a question that comes up all the time on Reddit. Etsy even created a special page for programmer-themed gift suggestions (showing more than 5,000 results). While CNET sticks to broader lists of "tech gifts" — and a separate list for "Star Wars gifts" — other sites around the web have been specifically honing in on programmer-specific suggestions. (Blue light-blocking glasses... A giant rubber duck... The world's strongest coffee... A printer that transfers digital images onto cheese...)

So while in years past Amazon has said they laughed at customer reviews for cans of uranium, this year Amazon has now added a special section that's entirely dedicated to Gifts for Computer Programmers, according to this funny rundown of 2023's "Gifts for Programmers" (that ends up recommending ChatGPT gift cards and backyard office sheds):

From the article: [Amazon's Gifts for Programmers section] shows over 3,000 results, with geek-friendly subcategories like "Glassware & Drinkware" and "Novelty Clothing"... For the coder in your life, Amazon offers everything from brainteasing programming puzzles to computerthemed jigsaw puzzles. Of course, there's also a wide selection of obligatory funny tshirts... But this year there's also tech-themed ties and motherboard-patterned socks...

Some programmers, though, might prefer a gift that's both fun and educational. And what's more entertaining than using your Python skills to program a toy robot dog...? But if you're shopping for someone who's more of a cat person, Petoi sells a kit for building a programmable (and open source) cat robot named "Nybble". The sophisticated Arduino-powered feline can be programmed with Python and C++ (as well as block-based coding)... [part of] the new community that's building around "OpenCat", the company's own quadruped robotic pet framework (open sourced on GitHub).

Security

Intelligence Researchers To Study Computer Code for Clues To Hackers' Identities (wsj.com) 4

Government researchers in the U.S. are studying methods to help identify hackers based on the code they use to carry out cyberattacks. From a report: The Intelligence Advanced Research Projects Activity, the lead federal research agency for the intelligence community, plans to develop technologies that could speed up investigations for identifying perpetrators of cyberattacks. "The number of attacks is increasing far more than the number of forensic experts that are available to go after these attacks," said Kristopher Reese, who is managing the research program at IARPA and holds a doctorate in computer science and engineering. The lack of forensic resources means hackers who target small organizations or companies that don't fall under critical infrastructure sectors often escape identification, he said.

Tools that are developed as part of the planned 30-month research project won't replace human analysts, who are crucial for identifying social and political dynamics that might explain why a particular hacking group targeted a victim, Reese said. But using artificial intelligence to analyze code used in cyberattacks will make investigations more efficient, he said. IARPA is accepting pitches from researchers until next month and plans to begin research next summer. [...] There hasn't been enough research into how analyzing code can reveal a hacker's identity, Reese said. Behavioral traits evident in code can reveal specific countries where hackers might be from or even the university where they were trained, he said. Some companies also have style guides outlining how employees should program, which could leave traces that indicate a person worked there, he said.

AI

Google DeepMind Uses LLM To Solve Unsolvable Math Problem (technologyreview.com) 48

An anonymous reader quotes a report from MIT Technology Review: In a paper published in Nature today, the researchers say it is the first time a large language model has been used to discover a solution to a long-standing scientific puzzle -- producing verifiable and valuable new information that did not previously exist. "It's not in the training data -- it wasn't even known," says coauthor Pushmeet Kohli, vice president of research at Google DeepMind. Large language models have a reputation for making things up, not for providing new facts. Google DeepMind's new tool, called FunSearch, could change that. It shows that they can indeed make discoveries -- if they are coaxed just so, and if you throw out the majority of what they come up with.

FunSearch (so called because it searches for mathematical functions, not because it's fun) continues a streak of discoveries in fundamental math and computer science that DeepMind has made using AI. First Alpha Tensor found a way to speed up a calculation at the heart of many different kinds of code, beating a 50-year record. Then AlphaDev found ways to make key algorithms used trillions of times a day run faster. Yet those tools did not use large language models. Built on top of DeepMind's game-playing AI AlphaZero, both solved math problems by treating them as if they were puzzles in Go or chess. The trouble is that they are stuck in their lanes, says Bernardino Romera-Paredes, a researcher at the company who worked on both AlphaTensor and FunSearch: "AlphaTensor is great at matrix multiplication, but basically nothing else." FunSearch takes a different tack. It combines a large language model called Codey, a version of Google's PaLM 2 that isfine-tuned on computer code, with other systems that reject incorrect or nonsensical answers and plug good ones back in.

The researchers started by sketching out the problem they wanted to solve in Python, a popular programming language. But they left out the lines in the program that would specify how to solve it. That is where FunSearch comes in. It gets Codey to fill in the blanks -- in effect, to suggest code that will solve the problem. A second algorithm then checks and scores what Codey comes up with. The best suggestions -- even if not yet correct -- are saved and given back to Codey, which tries to complete the program again. After a couple of million suggestions and a few dozen repetitions of the overall process -- which took a few days -- FunSearch was able to come up with code that produced a correct and previously unknown solution to the cap set problem, which involves finding the largest size of a certain type of set. Imagine plotting dots on graph paper. [...] To test its versatility, the researchers used FunSearch to approach another hard problem in math: the bin packing problem, which involves trying to pack items into as few bins as possible. This is important for a range of applications in computer science, from data center management to e-commerce. FunSearch came up with a way to solve it that's faster than human-devised ones.

Security

Lazarus Cyber Group Deploys DLang Malware Strains (theregister.com) 13

Connor Jones reports via The Register: DLang is among the newer breed of memory-safe languages being endorsed by Western security agencies over the past few years, the same type of language that cyber criminals are switching to. At least three new DLang-based malware strains have been used in attacks on worldwide organizations spanning the manufacturing, agriculture, and physical security industries, Cisco Talos revealed today. The attacks form part of what's being called "Operation Blacksmith" and are attributed to a group tracked as Andariel, believed to be a sub-division of the Lazarus Group -- North Korea's state-sponsored offensive cyber unit. [...]

The researchers noted that DLang is an uncommon choice for writing malware, but a shift towards newer languages and frameworks is one that's been accelerating over the last few years -- in malware coding as in the larger programming world. Rust, however, has often shown itself to be the preferred choice out of what is a fairly broad selection of languages deemed to be memory-safe. AlphV/BlackCat was the first ransomware group to make such a shift last year, re-writing its payload in Rust to offer its affiliates a more reliable tool. A month later, the now-shuttered Hive group did the same thing, and many others followed after that. Other groups to snub Rust include China-based Sandman which was recently observed using Lua-based malware, believed to be part of a wider shift toward Lua development from Chinese attackers.

Television

'Zombie TV': Cable Channels Left Showing Reruns as Their Owners Invest in Streaming Services (yahoo.com) 137

All those original shows on streaming services brought us "peak TV." But the New York Times reports on the flipside: back in the cable universe, they're experiencing "zombie TV": In 2015, the USA cable network was a force in original programming. Dramas like "Suits," "Mr. Robot" and "Royal Pains" either won awards or attracted big audiences. What a difference a few years make. Viewership is way down, and USA's original programming department is gone. The channel has had just one original scripted show this year, and it is not exclusive to the network — it also airs on another channel. During one 46-hour stretch last week, USA showed repeats of NBC's "Law & Order: Special Victims Unit" for all but two hours, when it showed reruns of CBS' "NCIS" and "NCIS: Los Angeles."

Instead of standing out among its peers, USA is emblematic of cable television's transformation. Many of the most popular channels — TBS, Comedy Central, MTV — have quickly morphed into zombie versions of their former selves. Networks that were once rich with original scripted programming are now vessels for endless marathons of reruns, along with occasional reality shows and live sports... Advertisers have begun to pull money from cable at high rates, analysts say, and leaders at cable providers have started to question what their consumers are paying for. In a dispute with Disney this year, executives who oversee the Spectrum cable service said media companies were letting their cable "programming house burn to the ground...."

The media companies that own the channels are in a bind. The so-called cable bundle was enormously profitable for media companies, and more than 100 million households subscribed at the peak. But subscribers are rapidly declining as people migrate toward streaming. Now roughly 70 million households subscribe to cable. As a result, most media companies are pulling resources from their individual cable networks and directing investment toward their streaming services. Peacock, which is owned by NBCUniversal, also the parent of USA, has begun making more and more original scripted shows over the last three years.

However, most streaming services are hemorrhaging cash. (An NBCUniversal executive said this week that Peacock would lose $2.8 billion this year.) Cable, although it is getting smaller, remains profitable.

Media analyst Michael Nathanson believes last year was saw a "tipping point" when cable advertising decreased — by double-digit percentages — in five consecutive fiscal quarters. "Advertisers are starting to realize that there's really nothing on here and they shouldn't pay for it."

One consultant who works with entertainment companies and used to run marketing at the Oxygen cable network tells the newspaper that cable channels "are being stripped for parts." The article calculates that in 2022 there were 39% fewer scripted programs on basic and premium cable than there were in 2015.

"Reruns are filling the hole."
Programming

40 years of Turbo Pascal: Memories of the Coding Dinosaur that Revolutionized IDEs (theregister.com) 113

TechSpot remembers that Turbo Pascal "stands out as one of the first instances of an integrated development environment (IDE), providing a text-based interface through which developers could write their code, compile it, and finally link it with runtime libraries." The early IDE, written in Assembly, eschewed the use of floppies, instead building the code directly in RAM for an unprecedented performance boost.

The language demonstrated superior speed, greater convenience, and a more affordable price compared to its competition. Philippe Kahn, Borland's CEO who initially conceptualized turning the new language into an all-in-one product, decided to sell the software via mail orders for just $49.95, establishing a market presence for the then-newly founded company.

It was called "Turbo" because its use of RAM made it considerable faster, adds the Register: Anders Hejlsberg, who would later go on to join Microsoft as part of the C# project, is widely credited as creator of the language, with Borland boss Philippe Kahn identifying the need for the all-in-one tool...

Version 1 had limitations. Source code files, for example, were limited to 64 KB. It would only produce .COM executable files for DOS and CP/M — although other architectures and operating systems were supported. It would also run from a single floppy disk, saving users from endless swapping in a world where single drives were the norm and a hard disk seemed impossibly exotic — and expensive... However, it was with version 4, in 1987, that Turbo Pascal changed dramatically. For one, support for CP/M and CP/M-86 was dropped, and the compiler would generate .EXE executables under DOS, lifting the .COM restrictions...

For this writer, 1989's version 5.5 was peak Turbo Pascal. Object-oriented programming features turned up, including classes and inheritance, and a step-by-step debugger. Version 6 and 7 brought in inline assembly and support for the creation of Windows executables and DLLs respectively, but version 7 also marked the end of the line as far as Borland was concerned. Turbo Pascal for Windows would turn up, but was eventually superseded by Delphi.

However, the steamroller of tools such as Visual Basic 3 ensured that Borland never had the same success in Windows that it enjoyed under DOS. As for Turbo Pascal, several versions were eventually released by Borland as freeware including version 1 for DOS, 5.5, and 7.

I once took a computer programming course taught entirely in Pascal. (Functions, subroutines, and procedures...)

Any Slashdot readers have their own memories to share about Pascal?
IBM

Can IBM's Watson Translate the World's 60-Year-Old Cobol Code? (pcmag.com) 120

"Every day, 3 trillion dollars worth of transactions are handled by a 64-year-old programming language that hardly anybody knows anymore," writes PC Magazine. But most school's don't teach the mainframe programming language COBOL any more, and "COBOL cowboys" are aging out of the workforce, with replacements in short supply.

"This is precisely the kind of problem that IBM thinks it can fix with AI." IBM's approach is fairly straightforward: Rather than relying exclusively on a limited pool of human programmers to solve the problem, it built a generative AI-powered code assistant (watsonx) that helps convert all that dusty old COBOL code to a more modern language, thereby saving coders countless hours of reprogramming. In extremely simplified terms, the process is similar to feeding an essay written in English into ChatGPT and asking it to translate certain paragraphs into Esperanto. It allows programmers to take a chunk of COBOL and enlist watsonx to transform it into Java.

But of course, it's not quite that simple in practice... After IBM and the customer have a thorough understanding of the application landscape, the data flow, and the existing dependencies, "we help them refactor their applications," says IBM's Vice President of Product Management, IT Automation, Keri Olson. "That is, breaking it down into smaller pieces, which the customer can selectively choose, at that point, to do the modernization from COBOL to Java." Skyla Loomis, IBM's Vice President of IBM Z Software adds, "But you have to remember that this is a developer assistant tool. It's AI assisted, but it still requires the developer. So yes, the developer is involved with the tooling and helping the customers select the services."

Once the partnership between man and machine is established, the AI steps in and says, 'Okay, I want to transform this portion of code. The developer may still need to perform some minor editing of the code that the AI provides, Loomis explains. "It might be 80 or 90 percent of what they need, but it still requires a couple of changes. It's a productivity enhancement — not a developer replacement type of activity."

The article quotes a skeptical Gartner Distinguished Vice President and Analyst, who notes that IBM "has no case studies, at this time, to validate its claims."
Programming

Go Programmers Surveyed: Most Use Linux or MacOS (go.dev) 29

The Go team conducted a survey of Go Developers in August — and has just released the results. Among the findings: "90% of survey respondents saying they felt satisfied while working with Go during the prior year," while 6% said they were dissastified. Further, the number of people working with Go continues to increase; we see evidence of this from external research like Stack Overflow's Developer Survey (which found 14% of professional developers worked with Go during the past year, a roughly 15% year-over-year increase), as well as analytics for go.dev (which show an 8% rise in visitors year-over-year). Combining this growth with a high satisfaction score is evidence that Go continues to appeal to developers, and suggests that many developers who choose to learn the language feel good about their decision long afterwards...

As in prior years, the majority of survey respondents told us they work with Go on Linux (63%) and macOS (58%) systems... We do continue to see that newer members of the Go community are more likely to be working with Windows than more experienced Go developers. We interpret this as a signal that Windows-based development is important for onboarding new developers to the Go ecosystem, and is a topic our team hopes to focus on more in 2024...

While x86-compatible systems still account for the majority of development (89%), ARM64 is also now used by a majority of respondents (56%). This adoption appears to be partly driven by Apple Silicon; macOS developers are now more likely to say they develop for ARM64 than for x86-based architectures (76% vs. 71%). However, Apple hardware isn't the only factor driving ARM64 adoption: among respondents who don't develop on macOS at all, 29% still say they develop for ARM64.

The most-preferred code editors among the surveyed Go programmers were VS Code (44%), GoLand (31%), Vim/Neovim (16%), and Emacs (3%). 52% of the survey's respondents actually selected "very satisfied" for their feelings about Go — the highest possible rating.

Other interesting findings:
  • " The top requests for improving toolchain warnings and errors were to make the messages more comprehensible and actionable; this sentiment was shared by developers of all experience levels, but was particularly strong among newer Go developers."
  • "Three out of every four respondents work on Go software that also uses cloud services; this is evidence that developers see Go as a language for modern, cloud-based development."
  • The experimental gonew tool (which offers predefined templates for instantiating new Go projects) "appears to solve critical problems for Go developers (especially developers new to Go) and does so in a way that matches their existing workflows for starting a new project. Based on these findings, we believe gonew can substantially reduce onboarding barriers for new Go developers and ease adoption of Go in organizations."
  • And when it comes to AI, "Go developers said they are more interested in AI/ML tooling that improves the quality, reliability, and performance of code they write, rather than writing code for them."

AI

Millions of Coders Are Now Using AI Assistants. How Will That Change Software? (technologyreview.com) 78

AI coding assistants are here to stay -- but just how big a difference they make is still unclear. From a report: Thomas Dohmke, GitHub's CEO: "You've got a lot of tabs open, you're planning a vacation, maybe you're reading the news. At last you copy the text you need and go back to your code, but it's 20 minutes later and you lost the flow." The key idea behind Copilot and other programs like it, sometimes called code assistants, is to put the information that programmers need right next to the code they are writing.

The tool tracks the code and comments (descriptions or notes written in natural language) in the file that a programmer is working on, as well as other files that it links to or that have been edited in the same project, and sends all this text to the large language model behind Copilot as a prompt. (GitHub co-developed Copilot's model, called Codex, with OpenAI. It is a large language model fine-tuned on code.) Copilot then predicts what the programmer is trying to do and suggests code to do it. This round trip between code and Codex happens multiple times a second, the prompt updating as the programmer types. At any moment, the programmer can accept what Copilot suggests by hitting the tab key, or ignore it and carry on typing. The tab button seems to get hit a lot. A study of almost a million Copilot users published by GitHub and the consulting firm Keystone Strategy in June -- a year after the tool's general release -- found that programmers accepted on average around 30% of its suggestions, according to GitHub's user data.

[...] Copilot has changed the basic skills of coding. As with ChatGPT or image makers like Stable Diffusion, the tool's output is often not exactly what's wanted -- but it can be close. "Maybe it's correct, maybe it's not -- but it's a good start," says Arghavan Moradi Dakhel, a researcher at Polytechnique Montreal in Canada who studies the use of machine-learning tools in software development. Programming becomes prompting: rather than coming up with code from scratch, the work involves tweaking half-formed code and nudging a large language model to produce something more on point.

Christmas Cheer

150,000 Programmers Tackle 'Advent of Code' in Event's 9th Year (adventofcode.com) 16

"Advent of Code" has begun. New programming puzzles will appear every day until Christmas at AdventOfCode.com — and the annual event (first started in 2015) has grown into a worldwide phenomenon. This year's first puzzle has been completed by over 150,000 programmers (with another 115,652 completing Day Two's puzzle). And 108,000 fans have also joined the Advent of Code subReddit.

Contest-related comments are popping up all around the web. Some participants are live streaming their puzzle-solving efforts on Twitch. Self-described computer nerd Gary Grady is tweeting cartoons about each day's puzzle. JetBrains is even giving away some prizes in their "Advent of Code with Kotlin" event. And JetBrains developer advocate Sebastian Aigner is also hosting daily livestreams about each puzzle.

It's hard to overstate how big this event has become. This year's event attracted 60 sponsors, including Kotlin (for the third consecutive year), as well as Spotify, Shopify, and Sony Interactive Entertainment (as well as JPMorgan Chase, Bank of America, and American Express). Individual donors can get a special badge next to their name, and there's also a shop selling coffee mugs and t-shirts. But at its core is real-world developer Eric Wastl (plus a team of loyal beta-testers) sharing his genuine fondness for computer programming. Wastl is also the creator of a satirical web page for the fast, lightweight, cross-platform framework Vanilla JS ("so popular that browsers have been automatically loading it for over a decade") and also curates a collection of "things in PHP which make me sad".

And you can find him on X sharing encouraging comments for this year's participants.
Programming

Java Tries a New Way to Use Multithreading: Structured Concurrency (infoworld.com) 96

"Structured concurrency is a new way to use multithreading in Java," reports InfoWorld.

"It allows developers to think about work in logical groups while taking advantage of both traditional and virtual threads." Available in preview in Java 21, structured concurrency is a key aspect of Java's future, so now is a good time to start working with it... Java's thread model makes it a strong contender among concurrent languages, but multithreading has always been inherently tricky. Structured concurrency allows you to use multiple threads with structured programming syntax. In essence, it provides a way to write concurrent software using familiar program flows and constructs. This lets developers focus on the business at hand, instead of the orchestration of threading.

As the JEP for structured concurrency says, "If a task splits into concurrent subtasks then they all return to the same place, namely the task's code block." Virtual threads, now an official feature of Java, create the possibility of cheaply spawning threads to gain concurrent performance. Structured concurrency provides the simple syntax to do so. As a result, Java now has a unique and highly-optimized threading system that is also easy to understand...

Between virtual threads and structured concurrency, Java developers have a compelling new mechanism for breaking up almost any code into concurrent tasks without much overhead... Any time you encounter a bottleneck where many tasks are occurring, you can easily hand them all off to the virtual thread engine, which will find the best way to orchestrate them. The new thread model with structured concurrency also makes it easy to customize and fine-tune this behavior. It will be very interesting to see how developers use these new concurrency capabilities in our applications, frameworks, and servers going forward.

It involves a new class StructuredTaskScope located in the java.util.concurrent library. (InfoWorld points out that "you'll need to use --enable-preview and --source 21 or --source 22 to enable structured concurrency.")

Their reporter shared an example on GitHub, and there's more examples in the Java 21 documentation. "The structured concurrency documentation includes an example of collecting subtask results as they succeed or fail and then returning the results."
Security

Rust Foundation Plans Training/Certification Program. Security Initiative Funded Through 2024 (rust-lang.org) 4

The Linux Foundation's own "Open Software Security foundation" has an associated project called Alpha-Omega funded by Microsoft, Google, and Amazon with a mission to catalyze sustainable security improvements to critical open source projects and ecosystems.

It was established nearly two years ago in February of 2022 — and this month announced plans to continue supporting the Rust Foundation Security Initiative: 2022 was also the first full year of operation for the Rust Foundation — an independent nonprofit dedicated to stewarding the Rust programming language and supporting its global community. Given the considerable growth and rising popularity of the Rust programming language in recent years, it has never been more critical to have a healthy and well-funded foundation in place to help ensure the safety and security of this important language.

When the Rust Foundation emerged, OpenSSF recognized a shared vision of global open source security baked into their organizational priorities from day one. These shared security values were the driving force behind Alpha-Omega's decision to grant $460k USD to the Rust Foundation in 2022. This funding helped underwrite their Security Initiative — a program dedicated to improving the state of security within the Rust programming language ecosystem and sowing security best practices within the Rust community. The Security Initiative began in earnest this past January and has now been in operation for a full year with many achievements to note and exciting plans in development.

While security is a clear priority of the Rust language itself and can be seen in its memory safety-critical features, the Rust Project cannot reasonably be expected to foster long term, sustainable security without proper support and funding. Indeed, there is still a pervasive attitude across technology that cybersecurity is being managed and prioritized by "someone else." The unfortunate impact of this attitude is that critical security work often falls on overburdened and under-resourced open source maintainers. By prioritizing the Security Initiative during their first full year in operation, the Rust Foundation has taken on the responsibility of overseeing — and supporting — security improvements within the Rust ecosystem while ensuring meaningful progress...

Alpha-Omega is excited to announce our second year of supporting the Rust Foundation Security Initiative. We believe that this funding will build on the good work and momentum established by the Rust Foundation in 2023. Through this partnership, we are helping relieve maintainer burdens while paving an important path towards a healthier and more secure future within the Rust ecosystem.

Meanwhile, this month the Rust Foundation announced that downloads from Rust's package repository crates.io have now reached 45 billion — and that the foundation is "committed to facilitating the healthy growth of Rust through funding and resources for the community and the Project.

"After conducting initial planning and research and getting approval from our board of directors, we are pleased to announce our intention to help fulfill this commitment by developing a Rust Foundation training and certification program." We continue to be supportive of anyone creating Rust training and education materials. In fact, we are proud to have provided funding to a few individuals involved in this work via our Community Grants Program. Our team is also aware that commercial Rust training courses already exist and that global training entities are already developing their own Rust-focused programs. Given the value of Rust in professional open source, this makes sense. However, we are eager to introduce a program that will allow us to direct profits back into the Rust ecosystem.

As a nonprofit organization, we sit in a unique position thanks to the tools, connections, insights, administrative support, and resources at our disposal — all of which will add value to course material aimed at professional development and adoption. We see our forthcoming program as one tool of many that can be used to verify skills for prospective employers, and for those employers to build out their professional teams of Rust expertise. We will remain supportive of existing training programs offered by Rust Foundation member companies and we'll look for ways to ensure this remains the case as program development progresses... There is no set launch date for the Rust Foundation training and certification program yet, but we plan to continue laying high-quality groundwork in Q4 of 2023 and the first half of 2024.

Programming

BBC BASIC Is Back In a Big Way (hackaday.com) 134

An anonymous reader quotes a report from Hackaday: The BBC has a long history of teaching the world about computers. The broadcaster's name was proudly displayed on the BBC Micro, and BBC Basic was the programming language developed especially for that computer. Now, BBC Basic is back and running on a whole mess of modern platforms. BBC Basic for SDL 2.0 will run on Windows, MacOS, x86 Linux, and even Raspberry Pi OS, Android, and iOS. Desktop versions of the programming environment feature a BASIC editor that has syntax coloring for ease of use, along with luxury features like search and replace that weren't always available at the dawn of the microcomputer era. Meanwhile, the smartphone versions feature a simplified interface designed to work better in a touchscreen environment.

It's weird to see, but BBC Basic can actually do some interesting stuff given the power of modern hardware. It can address up to 256 MB of memory, and work with far more advanced graphical assets than would ever have been possible on the original BBC Micro. If you honed your programming skills on that old metal, you might be impressed with what they can achieve with BBC Basic in a new, more powerful context.

Python

How Python's New Security Developer Hopes To Help All Software Supply Chains (thenewstack.io) 23

Long-time Slashdot reader destinyland writes: The Linux Foundation recently funded a new "security developer in residence" position for Python. (It's funded through the Linux Foundation's own "Open Software Security foundation", which has a stated mission of partnering with open source project maintainers "to systematically find new, as-yet-undiscovered vulnerabilities in open source code, and get them fixed to improve global software supply chain security.") The position went to the lead maintainer for the HTTP client library urllib3, the most downloaded package on the Python Package Index with over 10 billion downloads. But he hopes to create a ripple effect by demonstrating the impact of security investments in critical communities — ultimately instigating a wave of improvements to all software supply chains. (And he's also documenting everything for easy replication by other communities...)

So far he's improved the security of Python's release processes with signature audits and security-hardening automation. But he also learned that CVE numbers were being assigned to newly-discovered vulnerabilities by the National Cyber Security Division of the America's Department of Homeland Security — often without talking to anyone at the Python project. So by August he'd gotten the Python Software Foundation authorized as a CVE Numbering Authority, which should lead to more detailed advisories (including remediation information), now reviewed and approved by Python's security response teams.

"The Python Software wants to help other Open Source organizations, and will be sharing lessons learned," he writes in a blog post. And he now says he's already been communicating with the Curl program about his experiences to help them take the same step, and even authored a guide to the process for other open source projects.

AI

ChatGPT Generates Fake Data Set To Support Scientific Hypothesis (nature.com) 41

Researchers have used the technology behind the AI chatbot ChatGPT to create a fake clinical-trial data set to support an unverified scientific claim. From a report: In a paper published in JAMA Ophthalmology on 9 November, the authors used GPT-4 -- the latest version of the large language model on which ChatGPT runs -- paired with Advanced Data Analysis (ADA), a model that incorporates the programming language Python and can perform statistical analysis and create data visualizations. The AI-generated data compared the outcomes of two surgical procedures and indicated -- wrongly -- that one treatment is better than the other.

"Our aim was to highlight that, in a few minutes, you can create a data set that is not supported by real original data, and it is also opposite or in the other direction compared to the evidence that are available," says study co-author Giuseppe Giannaccare, an eye surgeon at the University of Cagliari in Italy. The ability of AI to fabricate convincing data adds to concern among researchers and journal editors about research integrity. "It was one thing that generative AI could be used to generate texts that would not be detectable using plagiarism software, but the capacity to create fake but realistic data sets is a next level of worry," says Elisabeth Bik, a microbiologist and independent research-integrity consultant in San Francisco, California. "It will make it very easy for any researcher or group of researchers to create fake measurements on non-existent patients, fake answers to questionnaires or to generate a large data set on animal experiments."

Supercomputing

Linux Foundation Announces Intent to Form 'High Performance Software Foundation' (linuxfoundation.org) 5

This week the Linux Foundation "announced the intention to form the High Performance Software Foundation.

"Through a series of technical projects, the High Performance Software Foundation aims to build, promote, and advance a portable software stack for high performance computing by increasing adoption, lowering barriers to contribution, and supporting development efforts." As use of high performance computing becomes ubiquitous in scientific computing and digital engineering, and AI use cases multiply, more and more data centers deploy GPUs and other compute accelerators. The High Performance Software Foundation intends to leverage investments made by the United States Department of Energy's Exascale Computing Project, the EuroHPC Joint Undertaking, and other international projects in accelerated high performance computing to exploit the performance of this diversifying set of architectures. As an umbrella project under the Linux Foundation, HPSF intends to provide a neutral space for pivotal projects in the high performance software ecosystem, enabling industry, academia, and government entities to collaborate together on the scientific software stack.

The High Performance Software Foundation already benefits from strong support across the high performance computing landscape, including leading companies and organizations like Amazon Web Services, Argonne National Laboratory, CEA, CIQ, Hewlett Packard Enterprise, Intel, Kitware, Lawrence Berkeley National Laboratory, Lawrence Livermore National Laboratory, Los Alamos National Laboratory, NVIDIA, Oak Ridge National Laboratory, Sandia National Laboratory, and the University of Oregon.

Its first open source technical projects include:
  • Spack: the high performance computing package manager
  • Kokkos: a performance-portable programming model for writing modern C++ applications in a hardware-agnostic way.
  • AMReX: a performance-portable software framework designed to accelerate solving partial differential equations on block-structured, adaptively refined meshes.
  • WarpX: a performance-portable Particle-in-Cell code with advanced algorithms that won the 2022 Gordon Bell Prize
  • Trilinos: a collection of reusable scientific software libraries, known in particular for linear, non-linear, and transient solvers, as well as optimization and uncertainty quantification.
  • Apptainer: a container system and image format specifically designed for secure high-performance computing.
  • VTK-m: a toolkit of scientific visualization algorithms for accelerator architectures.
  • HPCToolkit: performance measurement and analysis tools for computers ranging from laptops to the world's largest GPU-accelerated supercomputers.
  • E4S: the Extreme-scale Scientific Software Stack
  • Charliecloud: high performance computing-tailored, lightweight, fully unprivileged container implementation.

Slashdot Top Deals