×
Censorship

Do America's Free-Speech Protections Protect Code - and Prevent Cryptocurrency Regulation? (marketplace.org) 65

The short answers are "yes" and "no." America's Constitution prohibits government intervention into public expression, reports the business-news radio show Marketplace, "protecting free speech and expression "through, for example.... writing, protesting and coding languages like JavaScript, HTML, Python and Perl."

Specifically protecting code started with the 1995 case of cryptographer Daniel Bernstein, who challenged America's "export controls" on encryption (which regulated it like a weapon). But they also spoke to technology lawyer Kendra Albert, a clinical instructor at Harvard Law School's Cyberlaw Clinic, about the specific parameters of how America protects code as a form of expression: Albert: I think that the reality was that the position that code was a form of expression is in fact supported by a long history of First Amendment law. And that it, you know, is very consistent with how we see the First Amendment interpreted across a variety of contexts.... [O]ne of the questions courts ask is whether a regulation or legislation or a government action is specifically targeting speech, or whether the restrictions on speech are incidental, but not the overall intention. And that's actually one of the places you see kind of a lot of these difficulties around code as speech. The nature of many kinds of regulation may mean that they restrict code because of the things that particular forms of software code do in the world. But they weren't specifically meant to restrict the expressive conduct. And courts end up then having to sort of go through a test that was originally developed in the context of someone burning a draft card to figure out — OK, is this regulation, is the burden that it has on this form of expressive speech so significant that we can't regulate in this way? Or is this just not the focus, and the fact that there are some restrictions on speech as a result of the government attempting to regulate something else should not be the focus of the analysis?

Q: Congress and federal agencies as well as some states are looking to tighten regulations around cryptocurrencies and blockchain technology. What role do you think the idea of code as speech will play in this environment moving forward?

Albert: The reality is that the First Amendment is not a total bar to regulation of speech. It requires the government meet a higher standard for regulating certain kinds of speech. That runs, to some extent, in conflict with how people imagine what "code is speech" does as sort of a total restriction on the regulation of software, of code, because it has expressive content. It just means that we treat code similarly to how we treat other forms of expression, and that the government can regulate them under certain circumstances.

Programming

Will Low-Code and No-Code Development Replace Traditional Coding? (zdnet.com) 197

While there is a lot of noise about the hottest programming languages and the evolution of Web3, blockchain and the metaverse, none of this will matter if the industry doesn't have highly skilled software developers to build them," argues ZDNet.

So they spoke to Ori Bendet, VP of product management at CheckMarx, a builder software that tests application security. His prediction? Automatic code generators (ACG) like Github CoPilot, AWS CodeWhisperer and Tab9 will eventually replace "traditional" coding. "Although ACG is not as good as developers may think," Bendet says, "over the next few years, every developer will have their code generated, leaving them more time to focus on their core business." As businesses turn to automation as a means of quickly building and deploying new apps and digital services, low code and no code tools will play a fundamental role in shaping the future of the internet. According to a 2021 Gartner forecast, by 2025, 70% of new applications developed by enterprises will be based on low-code or no-code tools, compared to less than 25% in 2020. A lot of this work will be done by 'citizen developers' — employees who build business apps for themselves and other users using low code tools, but who don't have formal training in computer programming. In order to build a proficient citizen developer workforce, companies will need an equally innovative approach to training.

"Low code and no code tools are democratizing software development and providing opportunities for more people to build technology, prompting more innovation across industries," says Prashanth Chandrasekar, CEO of Stack Overflow....

The rise of low-code and no-code will also help to further democratize tech jobs, creating more opportunities for talented individuals from non-tech or non-academic backgrounds. A 2022 survey by developer recruitment platforms CoderPad and CodinGame found that 81% of tech recruiters now readily hire from 'no-degree' candidate profiles. CodinGame COO Aude Barral believes this trend will only grow as the demand for software professionals intensifies.

Stack Overflow's CEO sees some limitations. "Without taking the time to learn the fundamentals of writing code or the context in which code is used, developers using low-code or code suggestion tools will hit a limit in the quality and functionality of their code."

How is this playing out in the real world of professional IT? I'd like to invite Slashdot's readers to share their own experiences in the comments.

Are you seeing low-code and no-code development replacing traditional coding?
Education

Does Computer Programming Really Help Kids Learn Math? 218

Long-time Slashdot reader theodp writes: A new study on the Impact of Programming on Primary Mathematics Learning (abstract only, full article $24.95 on ScienceDirect) is generating some buzz on Twitter amongst K-12 CS educator types. It concluded that:

1. Programming did not benefit mathematics learning compared to traditional activities
2. There's a negative though small effect of programming on mathematics learning
3. Mindful "high-road transfer" from programming to mathematics is not self-evident
4. Visual programming languages might distract students from mathematics activities

From the Abstract: "The aim of this study is to investigate whether a programming activity might serve as a learning vehicle for mathematics acquisition in grades four and five.... Classes were randomly assigned to the programming (with Scratch) and control conditions. Multilevel analyses indicate negative effects (effect size range 0.16 to 0.21) of the programming condition for the three mathematical notions.

"A potential explanation of these results is the difficulties in the transfer of learning from programming to mathematics."

The findings of the new study come 4+ years after preliminary results were released from the $1.5M 2015-2019 NSF-funded study Time4CS, a "partnership between Broward County Public Schools (FL), researchers at the University of Chicago, and [tech-bankrolled] Code.org," which explored whether learning CS using Code.org's CS Fundamentals curriculum may be linked to improved learning in math at the grade 3-5 level. Time4CS researchers concluded that the "quasi-experimental" study showed that "No significant differences in Florida State Assessment mathematics scores resulted between treatment and comparison groups."
Perl

'Massive' Ongoing Changes to Perl Help It Move Beyond Its Unix Roots (stackoverflow.blog) 74

Perl's major version number hasn't changed since 1994, notes a new blog post at Stack Overflow by Perl book author Dave Cross. Yet the programming language has still undergone "massive changes" between version 5.6 (summer of 2000) and version 5.36 (released this May).

But because the Perl development strives for backwards compatibility, "many new Perl features are hidden away behind feature guards and aren't available unless you explicitly turn them on...." You're no doubt familiar with using print() to display data on the console or to write it to a file. Perl 5.10 introduced the say() command which does the same thing but automatically adds a newline character to the output. It sounds like a small thing, but it's surprisingly useful. How many times do you print a line of data to a file and have to remember to explicitly add the newline? This just makes your life a little bit easier....

Some of the improvements were needed because in places Perl's Unix/C heritage shows through a little more than we'd like it to in the 21st century. One good example of this is bareword filehandles... It is a variable. And, worst than that, it's a package variable (which is the closest thing that Perl has to a global variable)... [But] for a long time (back to at least Perl 5.6), it has been possible to open filehandles and store them in lexical variables... For a long time, Perl's standard functions for dealing with dates and times were also very tied to its Unix roots. You may have seen code like this:

my @datetime = localtime();

The localtime() function returns a list of values that represent the various parts of the current local time... Since Perl 5.10, the standard library has included a module called Time::Piece. When you use Time::Piece in your code, it overrides localtime() and replaces it with a function that returns an object that contains details of the current time and date. That object has a strftime() method... And it also has several other methods for accessing information about the time and date [including a method called is_leap_year]... Using Time::Piece will almost certainly make your date and time handling code easier to write and (more importantly) easier to read and understand....

In most languages you'd have a list of variable names after the subroutine name and the parameters would be passed directly into those. Well, as of version 5.36 (which was released earlier this summer) Perl has that too. You turn the feature on with use feature 'signatures'.... Subroutine signatures have many other features. You can, for example, declare default values for parameters.

And new features possibly coming soon incude a new object-oriented programming framework named Corinna being written into the Perl core. "Beyond that, the Perl development team have their eye on a major version number bump."

And to avoid confusion with Raku -- the offshoot programming language formerly known as Perl 6 -- the next major version of Perl will be Perl 7.
Programming

Developer Creates Delightful Programming Font Based on Minecraft (arstechnica.com) 34

North Carolina-based developer Idrees Hassan loves Minecraft so much that he recently created a monospaced font for programming based on the typeface found in the wildly popular video game. The result, Monocraft, gives programmers the feel of being in Minecraft without using any assets from the game. From a report: "To be honest, I made this font because I thought it'd be fun to learn how fonts worked," Hassan told Ars. "Existing Minecraft fonts were missing a bunch of small details like proper kerning and pixel size, so I figured I should make my own. Once that was done, there was nothing stopping me from going overboard and turning it into a 'proper' programming font. Plus, now I can write Minecraft plugins in a Minecraft font!" To adapt the Minecraft font for development purposes, Hassan redesigned characters to look better in a monospaced format, added a few serifs to make letters such as "i" and "l" easier to distinguish, created new programming ligature characters, and refined the arrow characters to make them easier to read. (Ligature characters combine popular operational character strings such as "!=" into a single new character, but they aren't always popular with developers.)
Android

Google Launches Third-Party Play Store Billing Pilot, But Only Cuts Fees By 4% (arstechnica.com) 16

An anonymous reader quotes a report from Ars Technica: Google is slowly opening up the Play Store's billing policies. The "user choice billing" pilot program that was announced in March is now accepting sign-ups. Google describes the program in a support article, saying, "This pilot is designed to test offering an alternative billing option next to Google Play's billing system and to help us explore offering this choice to users. We are looking to gain feedback in different countries and ensure we can maintain a positive user experience." Developers interested in billing through an alternative provider can fill out Google's sign-up form, and it sounds like Google will manually review each application. Google won't let developers use the pilot program for games -- the biggest money makers -- but only for apps.

Barring a few promotional tiers, Google and Apple both take around 30 percent not just for purchases of newly downloaded apps but also for digital purchases inside already downloaded apps. Many developers view these fees as excessive, and the push inside both ecosystems to allow third-party billing was originally pitched as a solution to high app store fees. Various regulatory bodies have forced the Google/Apple app store duopoly to open up payments, but Google and Apple have each done so without fixing the core problem of high app store fees. Apple takes a 27 percent cut of purchases processed outside the app store -- basically the original 30 percent fee minus the typical 3 percent processing fee charged by credit card companies. Google is doing something similar with this new program and will only reduce its fees by 4 percent. You'll still need to pay some kind of fee to your third-party payment processor, so with only a 4 percent reduction from Google, developers won't really save money.

Bitcoin

Solana-Based DeFi Protocol OptiFi Loses $661K In Programming Blunder (coindesk.com) 33

Derivatives-focused decentralized finance (DeFi) platform OptiFi accidentally closed its mainnet platform in a programming blunder, locking away $661,000 in USDC. CoinDesk reports: The Solana blockchain-powered protocol made the error when it tried to update its program code. Instead of a standard update, OptiFi accidentally used the "solana program close" command, resulting in the permanent closure of the platform on the mainnet, according to a blog post. The funds are irretrievable, although OptiFi said that it will return all users' deposits and settle positions manually on Friday. The estimated process time will be two weeks. [...] In a tweet, OptiFi said that 95% of total value locked is from one of its team members, meaning that customer asset may equate to only $33,000.
Python

IEEE's Top Programming Languages of 2022: Python (and SQL) (ieee.org) 76

The IEEE's official publication, IEEE Spectrum, has released its ninth annual ranking of the top programming languages. The results? Python remains on top but is closely followed by C. Indeed, the combined popularity of C and the big C-like languages — C++ and C# — would outrank Python by some margin.

Java also remains popular, as does Javascript, the latter buoyed by the ever-increasing complexity of websites and in-browser tools (although it's worth noting that in some quarters, the cool thing is now deliberately stripped-down static sites built with just HTML and simple CSS).

But among these stalwarts is the rising popularity of SQL. In fact, it's at No. 1 in our Jobs ranking, which looks solely at metrics from the IEEE Job Site and CareerBuilder. Having looked through literally hundreds and hundreds of job listings in the course of compiling these rankings for you, dear reader, I can say that the strength of the SQL signal is not because there are a lot of employers looking for just SQL coders, in the way that they advertise for Java experts or C++ developers. They want a given language plus SQL. And lots of them want that "plus SQL...."

Job listings are of course not the only metrics we look at in Spectrum. A complete list of our sources is here, but in a nutshell we look at nine metrics that we think are good proxies for measuring what languages people are programming in. Sources include GitHub, Google, Stack Overflow, Twitter, and IEEE Xplore [their library of technical content]. The raw data is normalized and weighted according to the different rankings offered — for example, the Spectrum default ranking is heavily weighted toward the interests of IEEE members, while Trending puts more weight on forums and social-media metrics.

Python is still #1 in their "Trending" view of language popularity, but with Java in second place (followed by C, JavaScript, C++ and C# — and then SQL). PHP is next — their 8th-most-trending language, followed by HTML, Go, R, and Rust.
Android

Will Google's 'Cross-Device' Development Kit Bring Android Apps to Non-Android Devices? (theverge.com) 20

Google is trying "to make it easier for developers to create Android apps that connect in some way across a range of devices," reports the Verge. Documentation for the software development kit says it will simplify development for "multi-device experiences."

"The Cross device SDK is open-source and will be available for different Android surfaces and non-Android ecosystem devices (Chrome OS, Windows, iOS)," explains the documentation, though the current developer preview only works with Android phones and tablets, according to the Verge.

But they report that Google's new SDK "contains the tools developers need to make their apps play nice across Android devices, and, eventually non-Android phones, tablets, TVs, cars, and more." The SDK is supposed to let developers do three key things with their apps: discover nearby devices, establish secure connections between devices, and host an app's experience across multiple devices. According to Google, its cross-device SDK uses Wi-Fi, Bluetooth, and ultra-wideband to deliver multi-device connectivity.... [I]t could let multiple users on separate devices choose items from a menu when creating a group food order, saving you from passing your phone around the room. It could also let you pick up where you left off in an article when swapping from your phone to a tablet, or even allow the passengers in a car to share a specific map location with the vehicle's navigation system.

It almost sounds like an expansion of Nearby Share, which enables users on Android to transfer files to devices that use Chrome OS and other Androids. In April, Esper's Mishaal Rahman spotted an upcoming Nearby Share update that could let you quickly share files across the devices that you're signed into Google with. Google also said during a CES 2022 keynote that it will bring Nearby Share to Windows devices later this year.

"This SDK abstracts away the intricacies involved with working with device discovery, authentication, and connection protocols," argues Google's blog post, "allowing you to focus on what matters most — building delightful user experiences and connecting these experiences across a variety of form factors and platforms."
Programming

Heroku Announces Plans To Eliminate Free Plans, Blaming 'Fraud and Abuse' (techcrunch.com) 9

After offering them for over a decade, Heroku announced this week that it will eliminate all of its free services -- pushing users to paid plans. From a report: Starting November 28, the Salesforce-owned cloud platform as a service will stop providing free product plans and shut down free data services and soon (on October 26) will begin deleting inactive accounts and associated storage for accounts that have been inactive for over a year. In a blog post, Bob Wise, Heroku general manager and Salesforce EVP, blamed "abuse" on the demise of the free services, which span the free plans for Heroku Dynos and Heroku Postgres as well as the free plan for Heroku Data for Redis.

[...] Wise went on to note that Heroku will be announcing a student program at Salesforce's upcoming Dreamforce conference in September, but the details remain a mystery at this point. For the uninitiated, Heroku allows programmers to build, run and scale apps across programming languages including Java, PHP, Scala and Go. Salesforce acquired the company for $212 million in 2010 and subsequently introduced support for Node.js and Clojure and Heroku for Facebook, a package to simplify the process of deploying Facebook apps on Heroku infrastructure. Heroku claims on its website that it's been used to develop 13 million apps to date.

Anime

World's Largest Japanese Anime Database 'Anime Taizen' Opens To the Public (crunchyroll.com) 23

The world's largest comprehensive database on Japanese anime, Anime Taizen, was opened to the public today, August 25, at 13:00 (JST). Taizen means "A book that collects all things related to the matter" in Japanese. Crunchyroll reports: Since 2015, The Association of Japanese Animations (AJA) has been promoting the "Anime NEXT_100" project to commemorate the 100th anniversary of Japanese animation. As a major initiative of the project, this database was first released on a trial basis on October 22, 2021, and after confirming functionality and operation, and making improvements and updates, it has now been released to the public. As of the end of July 2022, Anime Taizen has approximately 15,000 registered titles, mainly Japanese commercial anime works released from 1917 to the present. In addition to title name searches, the database has search functions for chronology, Japanese syllabary, keywords, etc. As a result of the research to date, the number of episodes amounts to approximately 180,000.
Programming

Report: 97% of Software Testing Pros Are Using Automation (venturebeat.com) 49

It turns out, software testers are relying more on automation than ever before, driven by a desire to lower testing costs and improve software quality and user experience. VentureBeat shares the findings from a new report by Kobiton: Kobiton asked 150 testers in companies with at least 50 employees across a range of industries. [...] For context, there are two kinds of software testing: manual and automated. Manual is still common but it's not ideal for repetitive tests, leading many testers to choose automation, which can expedite development and app performance. To wit, 40% of testers responding to Kobiton's study said their primary motivation for using automation is improving user experience. "In a study we conducted two years ago, half the testers we asked said their automation programs were relatively new, and 76% said they were automating fewer than 50% of all tests," said Kevin Lee, CEO of Kobiton. "Nearly 100% of testers participating in this year's study are using automation, which speaks to how far the industry has come."

Testing managers are prioritizing new hires with automation experience, too. Kobiton's study found that automation experience is one of the three skills managers are most interested in. And how is automation being used? A plurality (34%) of respondents to Kobiton's survey said they are using automation for an equal mix of regression and new feature testing. And it's made them more efficient. Almost half (47%) of survey respondents said it takes 3-5 days for manual testing before a release, whereas automated tests can have it done in 3-6 hours.

Desktops (Apple)

Devs Make Progress Getting MacOS Venture Running On Unsupported, Decade-Old Macs (arstechnica.com) 20

An anonymous reader quotes a report from Ars Technica: Skirting the official macOS system requirements to run new versions of the software on old, unsupported Macs has a rich history. Tools like XPostFacto and LeopardAssist could help old PowerPC Macs run newer versions of Mac OS X, a tradition kept alive in the modern era by dosdude1's patchers for Sierra, High Sierra, Mojave, and Catalina. For Big Sur and Monterey, the OpenCore Legacy Patcher (OCLP for short) is the best way to get new macOS versions running on old Macs. It's an offshoot of the OpenCore Hackintosh bootloader, and it's updated fairly frequently with new features and fixes and compatibility for newer macOS versions. The OCLP developers have admitted that macOS Ventura support will be tough, but they've made progress in some crucial areas that should keep some older Macs kicking for a little bit longer.

[...] First, while macOS doesn't technically include system files for pre-AVX2 Intel CPUs, Apple's Rosetta 2 software does still include those files, since Rosetta 2 emulates the capabilities of a pre-AVX2 x86 CPU. By extracting and installing those files in Ventura, you can re-enable support on Ivy Bridge and older CPUs without AVX2 instructions. And this week, Grymalyuk showed off another breakthrough: working graphics support on old Metal-capable Macs, including machines as old as the 2014 5K iMac, the 2012 Mac mini, and even the 2008 cheese grater-style Mac Pro tower. The OCLP team still has other challenges to surmount, not least of which will involve automating all of these hacks so that users without a deep technical understanding of macOS's underpinnings can continue to set up and use the bootloader. Grymalyuk still won't speculate about a timeframe for official Ventura support in OCLP. But given the progress that has been made so far, it seems likely that people with 2012-and-newer Macs should still be able to run Ventura on their Macs without giving up graphics acceleration or other important features.

Unix

Unix Legend Adding Unicode Support To AWK - Once He Figures Out Git (arstechnica.com) 103

Co-creator of core Unix utility, now 80, just needs to run a few more tests. From a report: A Princeton professor, finding a little time for himself in the summer academic lull, emailed an old friend a couple months ago. Brian Kernighan said hello, asked how their US visit was going, and dropped off hundreds of lines of code that could add Unicode support for AWK, the text-parsing tool he helped create for Unix at Bell Labs in 1977. "I have tested this a fair amount but clearly more tests are needed," Kernighan wrote in the email, posted as a kind of pseduo-commit on the onetrueawk repo by longtime maintainer Arnold Robbins. "Once I figure out how ... I will try to submit a pull request. I wish I understood git better, but in spite of your help, I still don't have a proper understanding, so this may take a while." Kernighan is the "K" in AWK, a special-purpose language for extracting and manipulating language that was key to Unix's pipeline features and interoperability between systems. A working awk function (AWK is the language, awk the command to invoke it) is critical to both Standard UNIX Specification and IEEE POSIX certification for interoperability. There are countless variants of awk, but "One True AWK," sometimes known as nawk, is the version based on Kernighan's 1985 book The AWK Programming Language and his subsequent input.

Kernighan is also the "K" in "K&R C," the foundational 1978 book The C Programming Language he cowrote with Dennis Ritchie that sticks with programmers, mentally and in dog-eared paper form. C's roots go much deeper. Kernighan had been teaching C to workers at Bell Labs and convinced its creator, Dennis Ritchie, to collaborate on a book to spread the knowledge. That book gave birth to "the one true brace style," the endless debate that goes with it, and the structure underpinning every modern programming language. Kernighan also named Unix and first demonstrated the "Hello, world" code example.

Encryption

Hyundai Uses Example Keys For Encryption System (schneier.com) 107

"Hyundai predictably fails in attempting to secure their car infotainment system with a default key lifted from programming examples," writes Slashdot reader sinij. "This level of security is unfortunately expected from auto manufacturers, who also would like to sell you always-connected Car2Car self-driving automobiles." Cryptographer and security experience Bruce Schneier writes: "Turns out the [AES] encryption key in that script is the first AES 128-bit CBC example key listed in the NIST document SP800-38A [PDF]," writes an unidentified developer under the name "greenluigi1." Luck held out, in a way. "Greenluigi1" found within the firmware image the RSA public key used by the updater, and searched online for a portion of that key. The search results pointed to a common public key that shows up in online tutorials like "RSA Encryption & Decryption Example with OpenSSL in C." Two questions remain:
1.) How did the test key get left behind?
2) Was it by accident or design?
Oracle

Oracle's 'Surveillance Machine' Targeted In US Privacy Class Action (techcrunch.com) 27

A new privacy class action claim (PDF) in the U.S. alleges Oracle's "worldwide surveillance machine" has amassed detailed dossiers on some five billion people, "accusing the company and its adtech and advertising subsidiaries of violating the privacy of the majority of the people on Earth," reports TechCrunch. From the report: The suit has three class representatives: Dr Johnny Ryan, senior fellow of the Irish Council for Civil Liberties (ICCL); Michael Katz-Lacabe, director of research at The Center for Human Rights and Privacy; and Dr Jennifer Golbeck, a professor of computer science at the University of Maryland -- who say they are "acting on behalf of worldwide Internet users who have been subject to Oracle's privacy violations." The litigants are represented by the San Francisco-headquartered law firm, Lieff Cabraser, which they note has run significant privacy cases against Big Tech. The key point here is there is no comprehensive federal privacy law in the U.S. -- so the litigation is certainly facing a hostile environment to make a privacy case -- hence the complaint references multiple federal, constitutional, tort and state laws, alleging violations of the Federal Electronic Communications Privacy Act, the Constitution of the State of California, the California Invasion of Privacy Act, as well as competition law, and the common law.

It remains to be seen whether this "patchwork" approach to a tricky legal environment will prevail -- for an expert snap analysis of the complaint and some key challenges this whole thread is highly recommended. But the substance of the complaint hinges on allegations that Oracle collects vast amounts of data from unwitting Internet users, i.e. without their consent, and uses this surveillance intelligence to profile individuals, further enriching profiles via its data marketplace and threatening people's privacy on a vast scale -- including, per the allegations, by the use of proxies for sensitive data to circumvent privacy controls.

Google

Five Years Later, Google is Still All-in on Kotlin (techcrunch.com) 40

An anonymous reader shares a report: It's been just over five years since Google announced at Google I/O 2017 that it would make Kotlin, the statically typed language for the Java Virtual Machine first developed by JetBrains, a first-class language for writing Android apps. Since then, Google took this a step further by making Kotlin its preferred language for writing Android apps in 2019 -- and while plenty of developers still use Java, Kotlin is quickly becoming the default way to build apps for Google's mobile operating system. Back in 2018, Google and JetBrains also teamed up to launch the Kotlin Foundation.

Earlier this week, I sat down with Google's James Ward, the company's product manager for Kotlin, to talk about the language's role in the Android ecosystem and beyond, as well as the company's future plans for it. It's no surprise that Google's hope is that over time, all Android developers will switch over to Kotlin. "There is still quite a bit of Java still happening on Android," Ward said. "We know that developers are generally more satisfied with Kotlin than with Java. We know that they're more productive, the quality of applications is higher and so getting more of those people to move more of their code over has been a focus for us. The interoperability of Kotlin ... with Java has made it that people can kind of progressively move code bases over and it would be great to get to the point down the road, where just everything is all Kotlin."

Oracle

Oracle Begins Auditing TikTok's Algorithms (axios.com) 32

Oracle has begun vetting TikTok's algorithms and content moderation models to ensure they aren't manipulated by Chinese authorities, Axios reported Tuesday. From the report: The effort is meant to provide further assurance to lawmakers that TikTok's U.S. platform operates independently from influence by the Chinese Communist Party. TikTok is owned by Chinese tech giant ByteDance. ByteDance bought the U.S. lip-syncing app Musical.ly in 2017 and merged it with its version of a similar app called TikTok. The app has since skyrocketed in popularity in the U.S.
IT

VLC-Developer VideoLan Says India Blocking Site Endangers Its Own Citizens (techcrunch.com) 23

VideoLan, the developer of popular media player VLC, says Indian telecom operators have been blocking its website since February of this year in a move that is potentially impacting some users in one of the open source firm's largest markets. From a report: "Most major ISPs [internet service providers] are banning the site, with diverse techniques," VideoLan president and lead developer Jean-Baptiste Kempf said of the blocking in India, in an email to TechCrunch. India represents 10% of all VLC users worldwide, he said. The website's traffic has seen an overall drop of 20% as a result of the blocking in India. [...] VLC, downloaded over 3.5 billion times worldwide, is a local media player that doesn't require internet access or connection to any particular service online for the vast majority of its features. But by blocking the website, India is pushing its citizens to "shady websites that are running hacked version of VLC. So they are endangering their own citizens with this ban," Kempf added.
Programming

Rust 1.63 Released, Adding Scoped Threads (rust-lang.org) 27

This week the Rust team announced the release of Rust 1.63.

One noteable update? Adding scoped threads to the standard library: Rust code could launch new threads with std::thread::spawn since 1.0, but this function bounds its closure with 'static. Roughly, this means that threads currently must have ownership of any arguments passed into their closure; you can't pass borrowed data into a thread. In cases where the threads are expected to exit by the end of the function (by being join()'d), this isn't strictly necessary and can require workarounds like placing the data in an Arc.

Now, with 1.63.0, the standard library is adding scoped threads, which allow spawning a thread borrowing from the local stack frame. The std::thread::scope API provides the necessary guarantee that any spawned threads will have exited prior to itself returning, which allows for safely borrowing data.

The official Rust RFC book says "The main drawback is that scoped threads make the standard library a little bit bigger," but calls it "a very common and useful utility...great for learning, testing, and exploratory programming.

"Every person learning Rust will at some point encounter interaction of borrowing and threads. There's a very important lesson to be taught that threads can in fact borrow local variables, but the standard library [didn't] reflect this." And otherwise, "Implementing scoped threads is very tricky to get right so it's good to have a reliable solution provided by the standard library."

Slashdot Top Deals