Programming

Does the New 'Mojo' Programming Language Offer a Faster Superset of Python? (infoworld.com) 71

InfoWorld explores how the new Mojo program language "resembles Python, how it's different, and what it has to offer." The newly unveiled Mojo language is being promoted as the best of multiple worlds: the ease of use and clear syntax of Python, with the speed and memory safety of Rust. Those are bold claims, and since Mojo is still in the very early stages of development, it will be some time before users can see for themselves how the language lives up to them. But Mojo's originator — a company named Modular — has provided early access [through a limited-enrollment preview program] to an online playground: a Jupyter Notebook environment where users can run Mojo code and learn about the language's features and behavior...

Mojo can be described as a "superset" of Python. Programs written in Python are valid Mojo programs, although some Python behaviors haven't yet been implemented... It's also possible to use the actual Python runtime for working with existing Python modules, although there is a performance cost. When Mojo introduces new syntax, it's for system-level programming features, chiefly manual memory handling. In other words, you can write Python code (or something almost exactly like it) for casual use cases, then use Mojo for more advanced, performance-intensive programming scenarios... Mojo's other big difference from Python is that Mojo's not interpreted through a runtime, as Python is. Mojo is compiled ahead-of-time to machine-native code, using the LLVM toolchain. To that end, the best performance comes from using features specific to Mojo. Python features are likely to come at the cost of emulating Python's dynamic behaviors, which are inherently slow — or again, by just using the Python runtime.

Many of Mojo's native language features do one of two things. They're either entirely new features not found in Python at all, or expansions of a Python feature that make it more performant, although with less of Python's dynamism.

For example, Mojo has its own fn keyword which defines a function with explicitly-typed and immutable-by-default arguments, and its own struct keyword which is less like a Python class and more like its C/C++ and Rust counterpart "with fixed layouts determined at compile time but optimized for machine-native speed."

But "At a glance, the code closely resembles Python. Even the new Mojo-specific keywords integrate well with existing Python syntax, so you can run your eye down the code and get a general idea of what's happening." And then there's the speed... The notebook demos also give examples of how Mojo code can be accelerated via parallelism, vectorizing, and "tiling" (increasing cache locality for operations). One of the demos, a 128x128 matrix multiplication demo, yielded a claimed 17-times speedup over Python (using the Python runtime in the Mojo playground) by simply running as-is with no special modification. Mojo added 1866x speedup by adding type annotations, 8500x speedup by adding vectorized operations, and 15000x speedup by adding parallelization.
AI

Will Productivity Gains from AI-Generated Code Be Offset by the Need to Maintain and Review It? (zdnet.com) 95

ZDNet asks the million-dollar question. "Despite the potential for vast productivity gains from generative AI tools such as ChatGPT or GitHub Copilot, will technology professionals' jobs actually grow more complicated? " People can now pump out code on demand in an abundance of languages, from Java to Python, along with helpful recommendations. Already, 95% of developers in a recent survey from Sourcegraph report they use Copilot, ChatGPT, and other gen AI tools this way.

But auto-generating new code only addresses part of the problem in enterprises that already maintain unwieldy codebases, and require high levels of cohesion, accountability, and security.

For starters, security and quality assurance tasks associated with software jobs aren't going to go away anytime soon. "For programmers and software engineers, ChatGPT and other large language models help create code in almost any language," says Andy Thurai, analyst with Constellation Research, before talking about security concerns. "However, most of the code that is generated is security-vulnerable and might not pass enterprise-grade code. So, while AI can help accelerate coding, care should be taken to analyze the code, find vulnerabilities, and fix it, which would take away some of the productivity increase that AI vendors tout about."

Then there's code sprawl. An analogy to the rollout of generative AI in coding is the introduction of cloud computing, which seemed to simplify application acquisition when first rolled out, and now means a tangle of services to be managed. The relative ease of generating code via AI will contribute to an ever-expanding codebase — what the Sourcegraph survey authors refer to as "Big Code". A majority of the 500 developers in the survey are concerned about managing all this new code, along with code sprawl, and its contribution to technical debt. Even before generative AI, close to eight in 10 say their codebase grew five times over the last three years, and a similar number struggle with understanding existing code generated by others.

So, the productivity prospects for generative AI in programming are a mixed bag.

AI

Is Self-Healing Code the Future of Software Development? (stackoverflow.blog) 99

We already have automated processes that detect bugs, test solutions, and generate documentation, notes a new post on Stack Overflow's blog. But beyond that, several developers "have written in the past on the idea of self-healing code. Head over to Stack Overflow's CI/CD Collective and you'll find numerous examples of technologists putting this ideas into practice."

Their blog post argues that self-healing code "is the future of software development." When code fails, it often gives an error message. If your software is any good, that error message will say exactly what was wrong and point you in the direction of a fix. Previous self-healing code programs are clever automations that reduce errors, allow for graceful fallbacks, and manage alerts. Maybe you want to add a little disk space or delete some files when you get a warning that utilization is at 90% percent. Or hey, have you tried turning it off and then back on again?

Developers love automating solutions to their problems, and with the rise of generative AI, this concept is likely to be applied to both the creation, maintenance, and the improvement of code at an entirely new level... "People have talked about technical debt for a long time, and now we have a brand new credit card here that is going to allow us to accumulate technical debt in ways we were never able to do before," said Armando Solar-Lezama, a professor at the Massachusetts Institute of Technology's Computer Science & Artificial Intelligence Laboratory, in an interview with the Wall Street Journal. "I think there is a risk of accumulating lots of very shoddy code written by a machine," he said, adding that companies will have to rethink methodologies around how they can work in tandem with the new tools' capabilities to avoid that.

Despite the occasional "hallucination" of non-existent information, Stack Overflow's blog acknowledges that large-language models improve when asked to review their response, identify errors, or show its work.

And they point out the project manager in charge of generative models at Google "believes that some of the work of checking the code over for accuracy, security, and speed will eventually fall to AI." Google is already using this technology to help speed up the process of resolving code review comments. The authors of a recent paper on this approach write that, "As of today, code-change authors at Google address a substantial amount of reviewer comments by applying an ML-suggested edit. We expect that to reduce time spent on code reviews by hundreds of thousands of hours annually at Google scale. Unsolicited, very positive feedback highlights that the impact of ML-suggested code edits increases Googlers' productivity and allows them to focus on more creative and complex tasks...."

Recently, we've seen some intriguing experiments that apply this review capability to code you're trying to deploy. Say a code push triggers an alert on a build failure in your CI pipeline. A plugin triggers a GitHub action that automatically send the code to a sandbox where an AI can review the code and the error, then commit a fix. That new code is run through the pipeline again, and if it passes the test, is moved to deploy... Right now his work happens in the CI/CD pipeline, but [Calvin Hoenes, the plugin's creator] dreams of a world where these kind of agents can help fix errors that arise from code that's already live in the world. "What's very fascinating is when you actually have in production code running and producing an error, could it heal itself on the fly?" asks Hoenes...

For now, says Hoenes, we need humans in the loop. Will there come a time when computer programs are expected to autonomously heal themselves as they are crafted and grown? "I mean, if you have great test coverage, right, if you have a hundred percent test coverage, you have a very clean, clean codebase, I can see that happening. For the medium, foreseeable future, we probably better off with the humans in the loop."

Last month Stack Overflow themselves tried an AI experiment that helped users to craft a good title for their question.
Intel

Intel Open Sources New 'One Mono' Font for Programmers (github.com) 51

Intel has announced Intel One Mono, a new font catering to "the needs of developers" with an "expressive" monospace for clarity and legibility" It's easier to read, and available for free, with an open-source font license.

Identifying the typographically underserved low-vision developer audience, Frere-Jones Type designed the Intel One Mono typeface in partnership with the Intel Brand Team and VMLY&R, for maximum legibility to address developers' fatigue and eyestrain and reduce coding errors. A panel of low-vision and legally blind developers provided feedback at each stage of design.

The Linux blog OMG! Ubuntu calls the new font "pretty decent," adding that "Between IBM Plex Mono, Hack, Fira Code, and JetBrains Mono I think we Linux users are spoilt for choice when it comes to open-source monospace fonts that look good and work great.

"Still, there's always room for more, right...?" Better yet, it's not only free to download and use but free to edit, and free to redistribute... Overall, I think Intel One Mono looks great, especially in a text editor (GUI or CLI). There's a noticeable upper and lower margin to the font that in dense text situations allows text to breathe, but in some terminal tools, like Neofetch, the gaps can seem a bit too happy.
The Intel One Mono repository on GitHub includes instructions for activating the font in VSCode and Sublime Text, and lists some extra features accessible in some applications and via CSS:
  • There is an option for a raised colon, either applied contextually between numbers or activated generally.
  • Superior/superscript and inferior/subscript figures are included via their Unicode codepoints, or you can produce them from the default figures via the sups (Superscript), subs (Subscript), and si (Scientific Inferior) features.
  • Fraction numerals are similarly available via the numr (Numerator) and dnom (Denominator) features. A set of premade fractions is also available in the fonts.

Programming

Google's Bard AI Can Now Write and Execute Code To Answer a Question 19

In a blog post on Wednesday, Google said Bard is getting better at logic and reasoning. "Google says that now when you ask Bard a 'computational' task like math or string manipulation, instead of showing the output of the language model, that language model will instead write a program, execute that program, and then show the output of that program to the user as an answer," reports Ars Technica. From the report: Google's blog post provides the example input of "Reverse the word 'Lollipop' for me." ChatGPT flubs this question and provides the incorrect answer "pillopoL," because language models see the world in chunks of words, or "tokens," and they just aren't good at this. It gets the output correct as "popilloL," but more interesting is that it also includes the python code it wrote to answer the question. That's neat for programming-minded people to see under the hood, but wow, is that probably the scariest output ever for regular people. It's also not particularly relevant. Imagine if Gmail showed you a block of code when you just asked it to fetch email. It's weird. Just do the job you were asked to do, Bard.

Google likens an AI model writing a program to humans doing long division in that it's a different mode of thinking [...]. Google says this "writing code on the fly" method will also be used for questions like: "What are the prime factors of 15683615?" and "Calculate the growth rate of my savings." The company says, "So far, we've seen this method improve the accuracy of Bard's responses to computation-based word and math problems in our internal challenge datasets by approximately 30%." As usual, Google warns Bard "might not get it right" due to interpreting your question wrong or just, like all of us, writing code that doesn't work the first time. Bard is coding up answers on the fly right now if you want to give it a shot at bard.google.com.
Businesses

Apollo, Popular Reddit App, To Shut Down June 30 Following API Price Surge 59

Popular Reddit app Apollo, which recently warned that social firm's API price hike would cost the developer $20 million a year for access, announced today that it's shutting shop: In order to avoid incurring charges I will delete Apollo's API token on the evening of June 30th PST. Until that point, Apollo should continue to operate as it has, but after that date attempts to connect to the Reddit API will fail. I will put up an explainer in the app prior to that which will go live at that date. I will also provide a tool to export any local data you have in Apollo, such as filters or favorites. In short, the Apollo app developer said, "Reddit's recent decisions and actions have unfortunately made it impossible for Apollo to continue."
AI

AI System Devises First Optimizations To Sorting Code In Over a Decade (arstechnica.com) 67

An anonymous reader quotes a report from Ars Technica: Anyone who has taken a basic computer science class has undoubtedly spent time devising a sorting algorithm -- code that will take an unordered list of items and put them in ascending or descending order. It's an interesting challenge because there are so many ways of doing it and because people have spent a lot of time figuring out how to do this sorting as efficiently as possible. Sorting is so basic that algorithms are built into most standard libraries for programming languages. And, in the case of the C++ library used with the LLVM compiler, the code hasn't been touched in over a decade.

But Google's DeepMind AI group has now developed a reinforcement learning tool that can develop extremely optimized algorithms without first being trained on human code examples. The trick was to set it up to treat programming as a game. [...] The AlphaDev system developed x86 assembly algorithms that treated the latency of the code as a score and tried to minimize that score while ensuring that the code ran to completion without errors. Through reinforcement learning, AlphaDev gradually develops the ability to write tight, highly efficient code. [...]

Since AlphaDev did produce more efficient code, the team wanted to get these incorporated back into the LLVM standard C++ library. The problem here is that the code was in assembly rather than C++. So, they had to work backward and figure out the C++ code that would produce the same assembly. Once that was done, the code was incorporated into the LLVM toolchain -- the first time some of the code had been modified in over a decade. As a result, the researchers estimate that AlphaDev's code is now executed trillions of times a day.
The research has been published in the journal Nature.
Social Networks

Reddit Will Exempt Accessibility-Focused Apps From Its Unpopular API Pricing Changes (theverge.com) 38

Reddit is creating an exemption to its unpopular new API pricing terms for makers of accessibility apps, which could come as a big relief for some developers worried about how to afford the potentially expensive fees and the users that rely on the apps to browse Reddit. From a report: As long as those apps are noncommercial and "address accessibility needs," they won't have to pay to access Reddit's data. "We've connected with select developers of non-commercial apps that address accessibility needs and offered them exemptions from our large-scale pricing terms," Reddit spokesperson Tim Rathschmidt says in a statement to The Verge.

The Reddit community has been in an uproar over the API pricing changes that might saddle developers with exorbitant charges and force them to shut down. Apollo developer Christian Selig, for example, says he'll be on the hook for about $20 million per year based on the updated pricing. Three days ago, moderators on the r/Blind subreddit posted an extensive message protesting the pricing changes, which could be hugely detrimental to apps for screen reader users like RedditForBlind and Luna For Reddit.

Social Networks

Reddit on New Pricing Plan: Company 'Needs To Be Fairly Paid' (bloomberg.com) 145

A number of Reddit forums plan to go dark for two days later this month to protest the company's decision to increase prices for third-party app developers. From a report: One developer, who makes a Reddit app called Apollo, said that under the new pricing policy he would have to pay Reddit $20 million a year to continue running the app as-is. Reddit's move comes after Twitter announced in February that the company would no longer support free access to its application programming interface, or API. Twitter instead now offers pricing tiers based on usage. Reddit spokesman Tim Rathschmidt said the company is trying to clear up confusion about the change on the platform, and stressed that Reddit spends millions on hosting. "Reddit needs to be fairly paid to continue supporting high-usage third-party apps," Rathschmidt said. "Our pricing is based on usage levels that we measure to be comparable to our own costs." The company said it is committed to supporting a developer ecosystem. In a post on its platform, Reddit laid out some of its pricing plans for businesses and said the changes would begin July 1.
Programming

NYT: It's the End of Computer Programming As We Know It (nytimes.com) 224

Long-time Slashdot theodp writes: Writing for the masses in It's the End of Computer Programming as We Know It. (And I Feel Fine.), NY Times opinion columnist Farhad Manjoo explains that while A.I. might not spell the end of programming ("the world will still need people with advanced coding skills"), it could mark the beginning of a new kind of programming — "one that doesn't require us to learn code but instead transforms human-language instructions into software."

"Wasn't coding supposed to be one of the can't-miss careers of the digital age?," Manjoo asks. "In the decades since I puttered around with my [ZX] Spectrum, computer programming grew from a nerdy hobby into a vocational near-imperative, the one skill to acquire to survive technological dislocation, no matter how absurd or callous-sounding the advice. Joe Biden told coal miners: Learn to code! Twitter trolls told laid-off journalists: Learn to code! Tim Cook told French kids: Apprenez à programmer! Programming might still be a worthwhile skill to learn, if only as an intellectual exercise, but it would have been silly to think of it as an endeavor insulated from the very automation it was enabling. Over much of the history of computing, coding has been on a path toward increasing simplicity."

In closing, Manjoo notes that A.I. has alleviated one of his worries (one shared by President Obama). "I've tried to introduce my two kids to programming the way my dad did for me, but both found it a snooze. Their disinterest in coding has been one of my disappointments as a father, not to mention a source of anxiety that they could be out of step with the future. (I live in Silicon Valley, where kids seem to learn to code before they learn to read.) But now I'm a bit less worried. By the time they're looking for careers, coding might be as antiquated as my first PC."

Btw, there are lots of comments — 700+ and counting — on Manjoo's column from programming types and others on whether reports of programming's death are greatly exaggerated.

Education

CS50, the World's Most Popular Online Programming Class, Turns to AI for Help (msn.com) 22

"The world's most popular online learning course, Harvard University's CS50, is getting a ChatGPT-era makeover," reports Bloomberg: CS50, an introductory course in computer science attended by hundreds of students on-campus and over 40,000 online, plans to use artificial intelligence to grade assignments, teach coding and personalize learning tips, according to its Professor David J. Malan... Even with more than 100 real-life teaching assistants, he said it had become difficult to fully engage with the growing number of students logging in from different time zones and with varying levels of knowledge and experience. "Providing support tailored to students' specific questions has been a challenge at scale, with so many more students online than teachers," said Mr Malan, 46.

His team is now fine-tuning an AI system to mark students' work, and testing a virtual teaching assistant to evaluate and provide feedback on students' programming. The virtual teaching assistant asks rhetorical questions and offers suggestions to help students learn, rather than simply catching errors and fixing coding bugs, he said. Longer term, he expects this to give human teaching assistants more time for in-person or Zoom-based office hours...

Mr Malan said CS50's use of AI could highlight its benefits for education, particularly in improving the quality and access of online learning — an industry that Grand View Research forecasts to grow to $348 billion by 2030, nearly tripling from 2022. "Potentially, AI is just hugely enabling in education," he said.

The Courts

US Judge Orders Lawyers To Sign AI Pledge, Warning Chatbots 'Make Stuff Up' (reuters.com) 24

An anonymous reader quotes a report from Reuters: A federal judge in Texas is now requiring lawyers in cases before him to certify that they did not use artificial intelligence to draft their filings without a human checking their accuracy. U.S. District Judge Brantley Starr of the Northern District of Texas issued the requirement on Tuesday, in what appears to be a first for the federal courts. In an interview Wednesday, Starr said that he created the requirement to warn lawyers that AI tools can create fake cases and that he may sanction them if they rely on AI-generated information without verifying it themselves. "We're at least putting lawyers on notice, who might not otherwise be on notice, that they can't just trust those databases. They've got to actually verify it themselves through a traditional database," Starr said.

In the notice about the requirement on his Dallas court's website, Starr said generative AI tools like ChatGPT are "incredibly powerful" and can be used in the law in other ways, but they should not be used for legal briefing. "These platforms in their current states are prone to hallucinations and bias. On hallucinations, they make stuff up -- even quotes and citations," the statement said. The judge also said that while attorneys swear an oath to uphold the law and represent their clients, the AI platforms do not. "Unbound by any sense of duty, honor, or justice, such programs act according to computer code rather than conviction, based on programming rather than principle," the notice said.

Starr said on Wednesday that he began drafting the mandate while attending a panel on artificial intelligence at a conference hosted by the 5th Circuit U.S. Court of Appeals, where the panelists demonstrated how the platforms made up bogus cases. The judge said he considered banning the use of AI in his courtroom altogether, but he decided not to do so after conversations with Eugene Volokh, a law professor at the UCLA School of Law, and others. Volokh said Wednesday that lawyers who use other databases for legal research might assume they can also rely on AI platforms. "This is a way of reminding lawyers they can't assume that," Volokh said.
Starr issued the requirement days after another judge threatened to sanction a lawyer for using ChatGPT to help write court filings that cited six nonexistent cases.
Programming

Stanford Golf Phenom Rose Zhang Turns Pro, Vows To 'Never Code Again' 75

theodp writes: Golf reports that amateur golf legend Rose Zhang will compete for the first time as a professional when she tees off in the first round of the Mizuho Americas Open Thursday. Golf news is rarely fodder for Slashdot discussion, but when the 20-year-old Stanford student (who plans to complete her degree after a leave of absence) was asked by Golf to identify her toughest class, she threw CS under the bus.

"CS 106A," Zhang replied, referring to a computer science course. "Currently and still trying to grind in that class. It's been a little unfortunate for me. I'm not a CS major. Will never code again after this class." Back in April, Zhang expressed some doubts about being able to juggle the demands of an already-renowned golf career and CS 106A. "I'll be super, super busy," Zhang said in an interview. "I'm planning on taking CS 106A. I don't know if it's a smart decision but it's kind of an essential intro CS class into Stanford so I'm going to try to navigate that, balance that out."

The Stanford Daily reports that CS 106A: Programming Methodology is an introductory programming course taken by 1,600+ students from all academic disciplines each year (2015 Slashdot post on CS 106A's growing pains). According to the syllabus, CS 106A "uses the Python programming language" and there's "no prior programming experience required," although the schedule indicates a lot of ground is covered for someone new to coding (the same could be said of Harvard's famed CS50).

Lest some take Zhang to task for the sin of stating programming is hard, consider that Stanford's CS 106A website suggests the same, reporting that the median score on the midterm exam was only 68%, despite a plethora of review materials and sessions. CS 106A students were offered the chance to submit formal 'regrade requests' to try to improve their midterm scores and can also vie for "a Jamba Juice gift card and 100% on the final exam" by entering a Python programming contest -- one prize will be awarded for "Aesthetic merit", another for "Algorithmic sophistication" (a number of runners-up will be awarded "a grade boost similar to getting a + on one of their assignments").
AI

AI Means Everyone Can Now Be a Programmer, Nvidia Chief Says (reuters.com) 170

Artificial intelligence means everyone can now be a computer programmer as all they need to do is speak to the computer, Nvidia CEO Jensen Huang said on Monday, hailing the end of the "digital divide." From a report: Speaking to thousands of people at the Computex forum in Taipei, Huang, who was born in southern Taiwan before his family emigrated to the United States when he was a child, said AI was leading a computing revolution. "There's no question we're in a new computing era," he said in a speech, occasionally dropping in words of Mandarin or Taiwanese to the delight of the crowd. "Every single computing era you could do different things that weren't possible before, and artificial intelligence certainly qualifies," Huang added. "The programming barrier is incredibly low. We have closed the digital divide. Everyone is a programmer now -- you just have to say something to the computer," he said. "The rate of progress, because it's so easy to use, is the reason why it's growing so fast. This is going to touch literally every single industry."
Python

Python 3.12 Brings New Features and Fixes (infoworld.com) 30

"The Python programming language releases new versions yearly, with a feature-locked beta release in the first half of the year and the final release toward the end of the year," writes InfoWorld.

So now Python 3.12 beta 1 has just been released, and InfoWorld compiled a list of its most significant new features. Some highlights: - The widely used Linux profiler tool perf works with Python, but only returns information about what's happening at the C level in the Python runtime. Information about actual Python program functions doesn't show up. Python 3.12 enables an opt-in mode to allow perf to harvest details about Python programs...

- Programs can run as much as an order of magnitude slower when run through a debugger or profiler. PEP 669 provides hooks for code object events that profilers and debuggers can attach to, such as the start or end of a function. A callback function could be registered by a tool to fire whenever such an event is triggered. There will still be a performance hit for profiling or debugging, but it'll be greatly reduced...

- Comprehensions, a syntax that lets you quickly construct lists, dictionaries, and sets, are now constructed "inline" rather than by way of temporary objects. The speedup for this has been clocked at around 11% for a real-world case and up to twice as fast for a micro-benchmark.

- Python's type-hinting syntax, added in Python 3.5, allows linting tools to catch a wide variety of errors ahead of time. With each new version, typing in Python gains features to cover a broader and more granular range of use cases... The type parameter syntax provides a cleaner way to specify types in a generic class, function, or type alias...

- Every object in Python has a reference count that tracks how many times other objects refer to it, including built-in objects like None. PEP 683 allows objects to be treated as "immortal," so that they never have their reference count changed. Making objects immortal has other powerful implications for Python in the long run. It makes it easier to implement multicore scaling, and to implement other optimizations (like avoiding copy-on-write) that would have been hard to implement before.

- With earlier versions of Python, the base size of an object was 208 bytes. Objects have been refactored multiple times over the last few versions of Python to make them smaller, which doesn't just allow more objects to live in memory but helps with cache locality. As of Python 3.12, the base size of an object is now 96 bytes — less than half of what it used to be.

Open Source

Peplum: F/OSS Distributed Parallel Computing and Supercomputing At Home With Ruby Infrastructure (ecsypno.com) 20

Slashdot reader Zapotek brings an update from the Ecsypno skunkworks, where they've been busy with R&D for distributed computing systems: Armed with Cuboid, Qmap was built, which tackled the handling of nmap in a distributed environment, with great results. Afterwards, an iterative clean-up process led to a template of sorts, for scheduling most applications in such environments.

With that, Peplum was born, which allows for OS applications, Ruby code and C/C++/Rust code (via Ruby extensions) to be distributed across machines and tackle the processing of neatly grouped objects.

In essence, Peplum:

- Is a distributed computing solution backed by Cuboid.
- Its basic function is to distribute workloads and deliver payloads across multiple machines and thus parallelize otherwise time consuming tasks.
- Allows you to combine several machines and built a cluster/supercomputer of sorts with great ease.

After that was dealt with, it was time to port Qmap over to Peplum for easier long-term maintenance, thus renamed Peplum::Nmap.

We have high hopes for Peplum as it basically means easy, simple and joyful cloud/clustering/super-computing at home, on-premise, anywhere really. Along with the capability to turn a lot of security oriented apps into super versions of themselves, it is quite the infrastructure.

Yes, this means there's a new solution if you're using multiple machines for "running simulations, to network mapping/security scans, to password cracking/recovery or just encoding your collection of music and video" -- or anything else: Peplum is a F/OSS (MIT licensed) project aimed at making clustering/super-computing affordable and accessible, by making it simple to setup a distributed parallel computing environment for abstract applications... TLDR: You no longer have to only imagine a Beowulf cluster of those, you can now easily build one yourself with Peplum.
Some technical specs: It is written in the Ruby programming language, thus coming with an entire ecosystem of libraries and the capability to run abstract Ruby code, execute external utilities, run OS commands, call C/C++/Rust routines and more...

Peplum is powered by Cuboid, a F/OSS (MIT licensed) abstract framework for distributed computing — both of them are funded by Ecsypno Single Member P.C., a new R&D and Consulting company.

Security

Bitwarden Moves Into Passwordless Security (thenewstack.io) 16

Bitwarden, the popular open-source password management program, has launched Bitwarden Passwordless.dev, a developer toolkit for integrating FIDO2 WebAuthn-based passkeys into websites and applications. The New Stack reports: Bitwarden Passwordless.dev uses an easy-to-use application programming interface (API) to provide a simplified approach to implementing passkey-based authentication with your existing code. This enables developers to create seamless authentication experiences swiftly and efficiently. For example, you can use it to integrate with FIDO2 WebAuthn applications such as Face ID, fingerprint, and Windows Hello. Enterprises also face challenges in integrating passkey-based authentication into their existing applications. Another way Bitwarden Passwordless.dev addresses this issue is by including an admin console. This enables programmers to configure applications, manage user attributes, monitor passkey usage, deploy code, and get started instantly.

"Passwordless authentication is rapidly gaining popularity due to its enhanced security and streamlined user login experience," said Michael Crandell, CEO of Bitwarden. "Bitwarden equips developers with the necessary tools and flexibility to implement passkey-based authentication swiftly and effortlessly, thereby improving user experiences while maintaining optimal security levels."

AI

Google Colab Promises 'AI-Powered Coding, Free of Charge' (blog.google) 24

Google Colab hosts free cloud-based "executable documents" that, among other things, let you write and run code in your browser (in dozens of languages, including Python).

Over 7 million people, including students, already use Colab, according to a recent post on Google's blog, "and now it's getting even better with advances in AI [with] features like code completions, natural language to code generation and even a code-assisting chatbot."

Google says it will "dramatically increase programming speed, quality, and comprehension." Our first features will focus on code generation. Natural language to code generation helps you generate larger blocks of code, writing whole functions from comments or prompts. [For example: "import data.csv as a dataframe."] The goal here is to reduce the need for writing repetitive code, so you can focus on the more interesting parts of programming and data science. Eligible users in Colab will see a new "Generate" button in their notebooks, allowing them to enter any text prompt to generate code.

For eligible paid users, as you type, you'll see autocomplete suggestions.

We're also bringing the helpfulness of a chatbot directly into Colab. Soon, you'll be able to ask questions directly in Colab like, "How do I import data from Google Sheets?" or "How do I filter a Pandas DataFrame?"

Anyone with an internet connection can access Colab, and use it free of charge... Access to these features will roll out gradually in the coming months, starting with our paid subscribers in the U.S. and then expanding into the free-of-charge tier.

It's powered by Google's "next generation" machine-learning language model PaLM 2 (announced earlier this month), which "excels at popular programming languages like Python and JavaScript, but can also generate specialized code in languages like Prolog, Fortran and Verilog." Colab will use Codey, a family of code models built on PaLM 2... fine-tuned on a large dataset of high quality, permissively licensed code from external sources to improve performance on coding tasks. Plus, the versions of Codey being used to power Colab have been customized especially for Python and for Colab-specific uses.
Programming

'Mojo May Be the Biggest Programming Language Advance In Decades' (www.fast.ai) 126

Mojo is a new programming language developed by Modular1 that aims to address the performance and deployment limitations of Python in areas like AI model development. After demoing Mojo prior to its launch, Jeremy Howard from the non-profit research group fast.ai said it feels like coding will never be the same again. Here's an excerpt from Howard's article: Modular is a fairly small startup that's only a year old, and only one part of the company is working on the Mojo language. Mojo development was only started recently. It's a small team, working for a short time, so how have they done so much? The key is that Mojo builds on some really powerful foundations. Very few software projects I've seen spend enough time building the right foundations, and tend to accrue as a result mounds of technical debt. Over time, it becomes harder and harder to add features and fix bugs. In a well designed system, however, every feature is easier to add than the last one, is faster, and has fewer bugs, because the foundations each feature builds upon are getting better and better. Mojo is a well designed system.

At its core is MLIR (Multi-Level Intermediate Representation), which has already been developed for many years, initially kicked off by Chris Lattner at Google. He had recognized what the core foundations for an "AI era programming language" would need, and focused on building them. MLIR was a key piece. Just as LLVM made it dramatically easier for powerful new programming languages to be developed over the last decade (such as Rust, Julia, and Swift, which are all based on LLVM), MLIR provides an even more powerful core to languages that are built on it. Another key enabler of Mojo's rapid development is the decision to use Python as the syntax. Developing and iterating on syntax is one of the most error-prone, complex, and controversial parts of the development of a language. By simply outsourcing that to an existing language (which also happens to be the most widely used language today) that whole piece disappears! The relatively small number of new bits of syntax needed on top of Python then largely fit quite naturally, since the base is already in place.

The next step was to create a minimal Pythonic way to call MLIR directly. That wasn't a big job at all, but it was all that was needed to then create all of Mojo on top of that -- and work directly in Mojo for everything else. That meant that the Mojo devs were able to "dog-food" Mojo when writing Mojo, nearly from the very start. Any time they found something didn't quite work great as they developed Mojo, they could add a needed feature to Mojo itself to make it easier for them to develop the next bit of Mojo!
You can give Mojo a try here.
Transportation

Saving AM Radio - the Case For and Against (msn.com) 282

This weekend the Washington Post updated the current status of AM radio: Automakers, such as BMW, Volkswagen, Mazda and Tesla, are removing AM radios from new electric vehicles because electric engines can interfere with the sound of AM stations. And Ford, one of the nation's top-three auto sellers, is taking a bigger step, eliminating AM from all of its vehicles, electric or gas-operated...

Mitsubishi, Nissan, Subaru, Toyota, Honda, Hyundai, Kia and Jaguar Land Rover — said they have no plans to eliminate AM.

The case for removing AM radio: [A]lthough 82 million Americans still listen to AM stations each month, according to the National Association of Broadcasters, the AM audience has been aging for decades. Ford says its data, pulled from internet-connected vehicles, shows that less than 5 percent of in-car listening is to AM stations. Ford spokesman Alan Hall said that because most AM stations also offer their programming online or on FM sister stations, the automaker will continue to "offer these alternatives for customers to hear their favorite AM radio music and news as we remove [AM] from most new and updated models." The 2024 Mustang is Ford's first internal combustion model to be marketed without AM...

As Ford did, BMW eliminated AM from electric models in part because "technological innovation has afforded consumers many additional options to receive the same or similar information," Adam McNeill, the company's U.S. vice president of engineering, said in a letter to Sen. Edward J. Markey (D-Mass.)... For the automakers, eliminating AM is a simple matter of numbers and progress. The AM audience keeps getting smaller and older, and the growth of alternative forms of in-car audio has been explosive.

But the Post adds this this happening "despite protests from station owners, listeners, first-responders and politicians from both major parties." and they point out that half of all AM-radio listening takes place in cars: Many AM stations don't offer alternative ways to listen to their shows. Even those that do say their audience, much of which is older, tends not to be adept at the technologies that let drivers stream anything they choose from their smartphones into their car's audio system. And despite the growing popularity of podcasts and streaming audio, a large majority of in-car listening remains old-fashioned broadcast radio, according to industry studies.

[S]ome of the country's most lucrative radio stations are still on AM, mostly all-news or news and talk stations in big cities such as New York, Chicago, Atlanta and Los Angeles.ome of the country's most lucrative radio stations are still on AM, mostly all-news or news and talk stations in big cities such as New York, Chicago, Atlanta and Los Angeles.

The Post also points out that AM and FM radio combined account for 60 percent of all in-car listening, according to a new study by Edison Research. "SiriusXM satellite radio makes up 16 percent of in-car audio use, followed by drivers' own music from their phones at 7 percent and podcasts and YouTube music videos at 4 percent each."

Slashdot Top Deals