Businesses

Unity Will Groom 80,000 Game Developers With Education Initiative (venturebeat.com) 54

Unity Technologies hopes to groom 80,000 people for game jobs over three years with an education initiative aimed at helping people learn how to program and develop games. From a report: Unity is paying for this program with help from its initial public offering, in which it raised $1.3 billion at a $13.6 billion valuation in September. At the time, it set aside 750,000 shares for the Unity Social Impact fund. That is valued at $83.6 million today, and part of it will be used for the education goal. I think of this as enlightened self-interest. By training people how to use its tools, Unity creates new customers for its game engine, which is the most popular tool for building games. Unity's Jessica Lindl said in an interview with GamesBeat that the company will create learning experiences to help people create a game portfolio, get Unity Certified, and prepare for a new job. "We've formalized a long company philosophy that the world is a better place with more creators in it," Lindl said. "This strategy is around how we are empowering our employees and our creators to foster a more inclusive and sustainable world." The COVID-19 pandemic has created a global recession that has left millions of people around the world out of work. So Unity hopes to address that with an alternative, no-cost path to employment with the launch of "career pathways."
Programming

Why Apple Silicon Needs an Open Source Fortran Compiler (walkingrandomly.com) 113

"Earlier this week Apple announced their new, ARM-based 'Apple Silicon' machines to the world in a slick marketing event that had many of us reaching for our credit cards," writes Mike Croucher, technical evangelist at The Numerical Algorithms Group.

"Simultaneously, The Numerical Algorithms Group announced that they had ported their Fortran Compiler to the new platform. At the time of writing this is the only Fortran compiler publicly available for Apple Silicon although that will likely change soon as open source Fortran compilers get updated."

An anonymous Slashdot reader offers this analysis: Apple Silicon currently has no open source Fortran compiler and Apple themselves are one of the few silicon manufacturers who don't have their own Fortran compiler. You could be forgiven for thinking that this doesn't matter to most users... if it wasn't for the fact that sizeable percentages of foundational data science platforms such as R and SciPy are written in Fortran.
Croucher argues that "More modern systems, such as R, make direct use of a lot of this code because it is highly performant and, perhaps more importantly, has been battle tested in production for decades. Numerical computing is hard (even when all of your instincts suggest otherwise) and when someone demonstrably does it right, it makes good sense to reuse rather than reinvent..."

"The community needs and will demand open source (or at least free) Fortran compilers if data scientists are ever going to realise the full potential of Apple's new hardware and I have no doubt that these are on the way. Other major silicon providers (e.g. Intel, AMD, NEC and NVIDIA/PGI) have their own Fortran compiler that co-exist with the open ones. Perhaps Apple should join the club..."
Microsoft

What Will Happen After Python Creator Guido Van Rossum Joins Microsoft? (thenewstack.io) 108

Programming columnist Mike Melanson assesses the news that Guido Van Rossum, the creator of the Python programming language, has come out of retirement to join Microsoft's developer division: The news brought a flurry of congratulations and feature requests, though a few of the suggested features indeed, already exist. Others still were met with informative responses that make the resulting threads worth a perusal, especially if you're looking for a quick "who's who" on Twitter for the world of programming languages. Microsoft's Miguel de Icaza pointed out that this addition adds to the company's now growing list of language designers and contributors:

"The developer division at Microsoft now employs the language designers and contributors to Python, Java, JavaScript, Typescript, F# C#, C++. We just need some PHP, Rust and Swift magic to complete the picture."

[Microsoft senior software engineer Kat Marchán added "We actually have some early ex-moz Rust people too!"]

So, what can we expect from all of this? Is it a corporate takeover of open source, as some further down in the long list of replies always seem to suggest? Or is Microsoft planning the Frankenstein of all languages, with a little bit of this, a little bit of that? In all likelihood, you Python developers using Microsoft products probably have some good features to look forward to in the near future, and that's that, but there's always lingering fears...especially when it comes to Microsoft. As van Rossum suggests, stay tuned.

After Slashdot's earlier story, long-time reader alexgieg posted his own theory: "Several months ago the Excel folk within Microsoft asked users whether they'd like to have Python as an alternative scripting language in Office. Support for that was overwhelming, but nothing more was said on the matter since then. I guess this is Microsoft's answer."
Programming

How C++ Programming Language Became the Invisible Foundation For Everything, and What's Next (techrepublic.com) 107

The origins of C++ date back 40 years, yet it remains one of the most widely used programming languages today. TechRepublic spoke to C++ creator, Bjarne Stroustrup, to find out why. An excerpt from the interview: Today, Stroustrup is a Technical Fellow at Morgan Stanley. His work with the International Organization for Standardization (ISO) for the C++ standard and on the C++ Core Guidelines are considered part of his role with the finance giant, and he remains very much involved in the development of C++. Most notably, Stroustrup forms part of the direction group, which presents and discusses recommendation about the future of the programming language. He also follows the evolution group, and takes part in discussions about new language features. When it comes to the day-to-day running of C++, however, Stroustrup is happy to take more of a backseat role. "I follow administrative activities but try to do as little as possible there. I am not a great administrator," he admits. Before the pandemic, Stroustrup would travel a lot to teach, and to explain C++ to the world at large through his books, articles, and interviews -- though much like the rest of the world, 2020 has put a temporary end to this.

"For my work, I depend critically on talking with people to learn about their problems and hear how my ideas might help them," Stroustrup says. "In this time of the pandemic, I am deprived of much-needed feedback. Virtual talks and interviews are not the same, and the dynamic of Zoom meetings are inferior to real face-to-face meetings when it comes to discussing design and ideas." The COVID-19 pandemic has also hindered progress with the next two iterations of the language, C++20 and C++23, though Stroustrup affirms that "almost all" of C++20 will ship in 2020. "Beyond that, there is work on Unicode, numerics, game development and low latency, tooling, AI, and much more," he says. "We ship a feature (language and library) when it is ready, and we issue a revised standard every three years. C++14, C++17, and C++20 shipped on time. It is worth noting that the standards effort and the major implementors are very much in sync. "It is crucial that C++ remains coherent and is a stable platform for development."

Python

Python Creator Guido van Rossum Joins Microsoft (techcrunch.com) 77

Guido van Rossum, the creator of the Python programming language, today announced that he has unretired and joined Microsoft's Developer Division. From a report: Van Rossum, who was last employed by Dropbox, retired last October after six and a half years at the company. Clearly, that retirement wasn't meant to last. At Microsoft, van Rossum says, he'll work to "make using Python better for sure (and not just on Windows)." A Microsoft spokesperson told us that the company also doesn't have any additional details to share but confirmed that van Rossum has indeed joined Microsoft. "We're excited to have him as part of the Developer Division. Microsoft is committed to contributing to and growing with the Python community, and Guido's on-boarding is a reflection of that commitment," the spokesperson said.
Programming

On Apple's Piss-Poor Documentation (caseyliss.com) 123

Casey Liss: For the last year or two, I've come to realize that the number one thing that makes it harder for me to do my job is documentation. Or, more specifically, the utter dearth of documentation that Apple provides for its platforms. As a developer, Apple provides us a series of tools -- APIs -- that allow us to make apps on iOS, iPadOS, macOS, and tvOS. In many cases, it's fairly straightforward to figure out how to use these APIs. There's only so many ways you can use a screwdriver, and similarly, in many cases there's only one obvious way to use an API. However, as users rightly demand more complicated and fancy apps, the APIs often need to get more fancy and complicated as well. Suddenly you look up and, instead of only using screwdrivers and hammers, you're using power tools and complicated saws, and everything is much more fiddly than it once was. With real tools, you'd expect to receive an owner's manual, which explains how to use the tool you've just purchased. A rough analogy exists for APIs, insofar as most platform vendors will provide documentation. This is basically the "owner's manual" for that API.

Apple's documentation has, for years, been pretty bad. Over the last couple years, it has gone from bad to awful to despicable to embarrassing. All too often, I go to research how to do something new, and use an API I'm not familiar with, only to be stymied by those three dreaded words:

No overview available.

This is Apple's way of saying "Fuck you, figure it out." No overview available is so bad that a popular Apple resource -- itself something that probably shouldn't have to exist -- used it as its namesake for a single-serving site to highlight how bad Apple's documentation is. The march of progress doesn't help, either. As my friend Adam Swinden pointed out to me on Twitter, as old APIs get deprecated, often times the new ones can't be bothered to include documentation. Check out the difference between this API and the one that replaces it. No overview available. Fuck you, figure it out.

Education

Microsoft: Make 11-Year-Olds 'Future Ready' With Minecraft Python Hour of Code 51

theodp writes: The upcoming "Hack the Classroom: STEM Edition," Microsoft explains, "is a [3-day] free virtual event series designed for K-12 educators, parents, and guardians. The sessions will feature resources and tutorials to help educators support students in learning future-ready skills. These lessons can be easily incorporated into classroom curriculum while preparing for this year's Hour of Code event -- a global effort to teach and demystify coding, during Computer Science Education Week, December 7-13."

Microsoft has boasted that the Hour of Code enabled it to reach tens of millions of schoolchildren each year with its drag-and-drop Minecraft-themed tutorials. New for middle and high schoolers this year is the Minecraft Python Hour of Code, which presumably taps into the just-released Python Content for Minecraft: Education Edition (sample Python 101 Lesson). The Hour of Code is run by Microsoft-funded Code.org, whose Board of Directors include Microsoft President Brad Smith.
Education

Should Retraining Programs for Laid-Off Retail Workers Include Computer Programming? 233

Appearing on ABC, former Chicago Mayor and Obama White House Chief of Staff Rahm Emanuel on Friday volunteered some suggestions for an economic recovery plan that America's next president could implement. "One of the things we've got to do to rebuild, mainly on infrastructure," he begins, before switching to additional ideas for also offering a more promising future to laid-off retail workers by trying to train them for better jobs. "There's going to be people like at JCPenney and other retail — those jobs aren't coming back. Give them the tools..."

One such possible job he offered as an example? Computer programming. "Six months, you're going to become a computer coder. We'll pay for it.... we need to give them a lifeline to what's the next chapter." He believes lots of people would be interested. Although before any of that, Rahm stressed, "The first part of the stimulus is creating a floor so the economy doesn't sink any more. You can't get an economy growing if states and companies are laying people off."

While computer programming was apparently meant as just one example of possible jobs training programs, this appears to have been twisted into claims that Rahm Emanuel believes millions of laid off retail workers should become computer programmers.

Long-time Slashdot reader theodp does point out that Emanuel has held a long-standing faith in the potential of computer science education. ("Before leaving office, Emanuel worked to make Computer Science a high school graduation requirement beginning with the Class of 2020, although the Chicago Public Schools waived the requirement this year, citing the pandemic.") But is that also one possible solution for older generations who didn't receive computer science training in high school?

What do Slashdot's readers think? Leave your own thoughts in the comments. Should the retraining programs offered to laid-off retail workers include computer programming?
Java

Python Overtakes Java To Become The Second-Most Popular Programming Language (techrepublic.com) 103

For the first time in the history of TIOBE's index, Java has slipped out of the top two, leaving Python to occupy the spot behind reigning champion, C. TechRepublic reports: October's TIOBE index had C at No. 1 and Java at No. 2, and historically those two languages have simply traded spaces while the rest of the competition battled it out for the privilege to fall in behind the two perennial leaders. With Python finally overtaking Java in popularity, the future could be one in which everything comes up Python. "In the past, most programming activities were performed by software engineers. But programming skills are needed everywhere nowadays and there is a lack of good software developers," TIOBE CEO Paul Jansen said. "As a consequence, we need something simple that can be handled by non-software engineers, something easy to learn with fast edit cycles and smooth deployment. Python meets all these needs."

Jansen said that he believes this is the case despite claims from others that Python's popularity is due to booms in data mining, AI, numerical computing, and other initiatives that commonly use Python's extensive data processing capabilities. As TechRepublic's R. Dallon Adams wrote in his piece on the October index, Python has been giving Java a run for its money for some time. October saw Python at No. 3 with the largest year-over-year growth percentage in the top 50 languages. Java, still at second place in October, had the largest negative year-over-year growth rate in the top 50 during the same period.
R, Perl, and Go are also all boasting positive growth. "R is in 9th place, the same it occupied last month," reports TechRepublic. "R has experienced explosive growth in 2020, which has led TIOBE to consider it a contender for programming language of the year."
Programming

Should Computer Programming Classes Focus on Projects Instead of 'Logic Puzzles'? (acm.org) 108

Long-time Slashdot reader theodp writes: Writing in the November Communications of the ACM, MIT's Mitchel Resnick and Natalie Rusk explain that the educational use of coding in schools is at a crossroads. The good news? "School systems and policymakers are embracing the idea that coding can and should be for everyone."

The bad news? "In many places, coding is being introduced in ways that undermine its potential and promise. If we do not think carefully about the educational strategies and pedagogies for introducing coding, there is a major risk of disappointment and backlash." To address this, Resnick and Rusk argue, the design of technologies, activities, curriculum, communities, and spaces to support coding and learning should be guided by the "Four Ps" of Creative Learning: Projects, Passion, Peers, and Play:

"To us, it seems natural to introduce coding to young people in a project-oriented way, so that they learn to express themselves creatively as they learn to code. But many introductions to coding take a very different approach, presenting students with a series of logic puzzles in which they need to program animated characters to move from one location to another. When students successfully solve one puzzle, they can move on to the next. Students undoubtedly learn some useful computational concepts while working on these puzzles. But learning to code by solving logic puzzles is somewhat like learning to write by solving crossword puzzles. That's not the way to become truly fluent. Just as students develop fluency with language by writing their own stories (not just playing word games), students develop fluency with coding by creating projects (not just solving puzzles)."

Putting the Four Ps into practice, the authors concede, is easier said than done. "From our observations of Scratch activities around the world over the past decade, we have seen the value of Projects, Passion, Peers, and Play in supporting the development of computational fluency. But we have also seen that it is not easy to put these four principles into practice within the realities of today's standards-based, assessment-driven classrooms."

Programming

After 3-Year Hiatus, 'Pyston' Runtime Returns to Make Python Code Faster (infoworld.com) 27

"Development of Pyston, a variant of the Python runtime that uses just-in-time compilation to speed up the execution of Python programs, is back on again," reports InfoWorld — after a hiatus that began in 2017: Picking up where Dropbox left off, a new development team has released Pyston 2.0. Pyston provides what is ultimately intended to be a drop-in replacement for the standard Python runtime, CPython. It's compatible with Python 3.8, so programs that runs with that version of Python should run as-is on Pyston...

One of the goals of the project was to remain as close as possible to the original implementation of CPython, since many third-party projects make assumptions about CPython behavior. Thus Pyston 2.0 began with the existing CPython codebase and added features from Pyston 1.0 that worked well, such as caching attributes and JITting. Pyston's JIT no longer uses LLVM, but DynASM to emit assembly directly...

[U]nlike the original Pyston incarnation, the new version is closed-source for the time being, as its new stewards determine their business model.

Intel

Hackers Can Now Reverse Engineer Intel Updates Or Write Their Own Custom Firmware (arstechnica.com) 21

An anonymous reader quotes a report from Ars Technica: Researchers have extracted the secret key that encrypts updates to an assortment of Intel CPUs, a feat that could have wide-ranging consequences for the way the chips are used and, possibly, the way they're secured. The key makes it possible to decrypt the microcode updates Intel provides to fix security vulnerabilities and other types of bugs. Having a decrypted copy of an update may allow hackers to reverse engineer it and learn precisely how to exploit the hole it's patching. The key may also allow parties other than Intel -- say a malicious hacker or a hobbyist -- to update chips with their own microcode, although that customized version wouldn't survive a reboot.

"At the moment, it is quite difficult to assess the security impact," independent researcher Maxim Goryachy said in a direct message. "But in any case, this is the first time in the history of Intel processors when you can execute your microcode inside and analyze the updates." Goryachy and two other researchers -- Dmitry Sklyarov and Mark Ermolov, both with security firm Positive Technologies -- worked jointly on the project. The key can be extracted for any chip -- be it a Celeron, Pentium, or Atom -- that's based on Intel's Goldmont architecture.
In a statement, Intel officials wrote: "The issue described does not represent security exposure to customers, and we do not rely on obfuscation of information behind red unlock as a security measure. In addition to the INTEL-SA-00086 mitigation, OEMs following Intel's manufacturing guidance have mitigated the OEM specific unlock capabilities required for this research. The private key used to authenticate microcode does not reside in the silicon, and an attacker cannot load an unauthenticated patch on a remote system."
Youtube

RIAA's YouTube-DL Takedown Ticks Off Developers and GitHub's CEO (torrentfreak.com) 58

An RIAA takedown request, which removed the YouTube-DL repository from GitHub, has ticked off developers and GitHub's CEO. Numerous people responded by copying and republishing the contested code, including in some quite clever ways. Meanwhile, GitHub's CEO is "annoyed" as well, offering help to get the repo reinstated. TorrentFreak reports: Soon after the RIAA notice took YouTube-DL offline many developers spoke out in protest. They believe that the music industry group went too far and started to republish copies of the code everywhere. Over the past several days, we have seen hundreds of new forks and copies appear online. These were also posted to GitHub, where YouTube-DL forks remain easy to find and continue to be uploaded. The code was also posted in some places one wouldn't expect. For example, there's still a copy in GitHub's DMCA notice repository, which some people find quite amusing. And the list of pull requests can be quite entertaining in themselves.

One of the most creative responses we've seen was posted to Twitter by @GalacticFurball who encoded YouTube-DL into images that can be easily shared, encouraging others to share these as well. "I would also suggest that you save and repost the images, as one single source kind of defeats the point. Maybe start a hashtag trend or something. Make songs, and poetry. Get that data out there." This triggered even more creativity, with people finding alternative means to share the code online, all to counter the RIAA's takedown request.

Meanwhile, GitHub's CEO Nat Friedman wasn't sitting still either. While the Microsoft-owned developer platform had to respond to the takedown notice, Friedman himself actively reached out to YouTube-DL's developers to help them get their project reinstated. The CEO joined YouTube-DL's IRC channel hoping to connect with the owner of the repository so he can help to get it unsuspended. "GitHub exists to help developers. We never want to interfere with their work. We want to help the youtube-dl maintainers defeat the DMCA claim so that we can restore the repo," Friedman told TorrentFreak, explaining his actions. GitHub's CEO suggested that YouTube-DL won't be reinstated in its original form. But, the software may be able to return without the rolling cipher circumvention code and the examples of how to download copyrighted material.

Programming

The No-Code Generation is Arriving (techcrunch.com) 154

An anonymous reader shares a column: In the distant past, there was a proverbial "digital divide" that bifurcated workers into those who knew how to use computers and those who didn't. Young Gen Xers and their later millennial companions grew up with Power Macs and Wintel boxes, and that experience made them native users on how to make these technologies do productive work. Older generations were going to be wiped out by younger workers who were more adaptable to the needs of the modern digital economy, upending our routine notion that professional experience equals value. Of course, that was just a narrative. Facility with using computers was determined by the ability to turn it on and log in, a bar so low that it can be shocking to the modern reader to think that a "divide" existed at all. Software engineering, computer science and statistics remained quite unpopular compared to other academic programs, even in universities, let alone in primary through secondary schools. Most Gen Xers and millennials never learned to code, or frankly, even to make a pivot table or calculate basic statistical averages.

There's a sociological change underway though, and it's going to make the first divide look quaint in hindsight. Over the past two or so years, we have seen the rise of a whole class of software that has been broadly (and quite inaccurately) dubbed "no-code platforms." These tools are designed to make it much easier for users to harness the power of computing in their daily work. That could be everything from calculating the most successful digital ad campaigns given some sort of objective function, or perhaps integrating a computer vision library into a workflow that calculates the number of people entering or exiting a building. The success and notoriety of these tools comes from the feeling that they grant superpowers to their users. Projects that once took a team of engineers some hours to build can now be stitched together in a couple of clicks through a user interface. That's why young startups like Retool can raise at nearly a $1 billion valuation and Airtable at $2.6 billion, while others like Bildr, Shogun, Bubble, Stacker and dozens more are getting traction among users.

Programming

Can We Replace YAML With an Easier Markup Language? (chrisshort.net) 161

On his personal blog, Red Hat's Chris Short (also a CNCF Cloud Native Ambassador) told his readers that "We kinda went down a rabbit hole the other day when I suggested folks check out yq. ("The aim of the project is to be the jq or sed of yaml files.")

"First, there's nothing wrong with this project. I like it, I find the tool useful, and that's that. But the great debate started over our lord and savior, YAML."

And then he shares what he learned from a bad experience reading the YAML spec in 2012: It was not an RFC, which I am fond of reading, but something about the YAML spec made me sad and frustrated. Syntax really mattered. Whitespace really mattered... It is human-readable because you see the human-readable words in the scalars and structures, but there was something off-putting about YAML. It was a markup language claiming not to be a markup language. I held the firm belief that markup languages are supposed to make things simpler for humans, not harder (XML is the antithesis of markup languages, in my opinion)...

Close to ten years later, I see YAML in the same somewhat offputting light... I hope that a drop in replacement is possible. The fact that we need tools like yq does show that there is some work to be done when it comes to wrangling the YAML beast at scale... Incrementally, YAML is better than XML but, it sucks compared to something like HTML or Markdown (which I can teach to execs and children alike)...

Yes, balancing machine and human readability is hard. The compromises suck, but, at some point, there's enough compute to run a process to take in something 100% human-readable and make it 100% machine-readable... There will always be complexity and a need to understand the tool you're using. But, YAML gives us an example that there can and should be better things.

In a comment on the original submission, Slashdot reader BAReFO0t writes "Binary markup or GTFO." UTF8 is already binary. Hell, ASCII is already binary numbers, not directly readable, but mapped to vector drawings or bitmap images ... that again are rendered to pixel values, that are then turning on blinkenlights or ink blots or noises that a human can actually recognize directly.

So why not extend it to structure, instead of just letters (... and colors ... and sound pressures... EBML's core [Extensible Binary Meta Language] is the logical choice.

If all editors always display it as, say XML, just like they all convert numbers into text-shaped blinkenlights too, people will soon call it "plain, human readable" too...

Java

Java Geeks Discuss 'The War for the Browser' and the State of Java Modularization (frequal.com) 67

Self-described "Java geek" nfrankel writes: At the beginning of 2019, I wrote about the state of Java modularization. I took a sample of widespread libraries, and for each of them, I checked whether:

- It supports the module system i.e. it provides an automatic module name in the manifest

- It's a full-fledged module i.e. it provides a module-info

The results were interesting. 14 out of those 29 libraries supported the module system, while 2 were modules in their own right.

Nearly 2 years later, and with Java 16 looming around the corner, it's time to update the report. I kept the same libraries and added Hazelcast and Hazelcast Jet. I've checked the latest version...

Three full years after that release, 10 out of 31 libraries still don't provide a module-compatible JAR. Granted, 3 of them didn't release a new version in the meantime. That's still 7 libraries that didn't add a simple line of text in their MANIFEST.MF

Meanwhile, long-time Slashdot reader AirHog argues that "Java is in a war for the browser. Can it regain the place it once held in its heyday?" All major browsers have disabled support for Java (and indeed most non-JavaScript technologies). Web-based front-ends are usually coded in JavaScript or some wrapper designed to make it less problematic (like TypeScript). Yes, you can still make websites using Java technology. There are plenty of 'official' technologies like JSP and JSF. Unfortunately, these technologies are entirely server-side. You can generate the page using Java libraries and business logic, but once it is sent to the browser it is static and lifeless... Java client-side innovation has all but stopped, at least via the official channels....

How can Java increase its relevance? How can Java win back client-side developers? How can Java prevent other technologies from leveraging front-end dominance to win the back-end, like Java once did to other technologies?

To win the war, Java needs a strong client-side option. One that lets developers make modern web applications using Java code. One that leverages web technologies. One that supports components. One that builds quickly. One that produces fast-downloading, high performance, 100-Lighthouse-scoring apps. One that plays nicely with other JVM languages. What does Java need?

Spoiler: The article concludes that "What Java needs Is TeaVM... an ahead-of-time transpiler that compiles Java classes to JavaScript."
Python

Does Python Need to Change? (zdnet.com) 233

The Python programming language "is a big hit for machine learning," read a headline this week at ZDNet, adding "But now it needs to change."

Python is the top language according to IEEE Spectrum's electrical engineering audience, yet you can't run Python in a browser and you can't easily run it on a smartphone. Plus no one builds games in Python these days. To build browser applications, developers tend to go for JavaScript, Microsoft's type-safety take on it, TypeScript, Google-made Go, or even old but trusty PHP. On mobile, why would application developers use Python when there's Java, Java-compatible Kotlin, Apple's Swift, or Google's Dart? Python doesn't even support compilation to the WebAssembly runtime, a web application standard supported by Mozilla, Microsoft, Google, Apple, Intel, Fastly, RedHat and others.

These are just some of the limitations raised by Armin Ronacher, a developer with a long history in Python who 10 years ago created the popular Flask Python microframework to solve problems he had when writing web applications in Python. Austria-based Ronacher is the director of engineering at US startup Sentry — an open-source project and tech company used by engineering and product teams at GitHub, Atlassian, Reddit and others to monitor user app crashes due to glitches on the frontend, backend or in the mobile app itself... Despite Python's success as a language, Ronacher reckons it's at risk of losing its appeal as a general-purpose programming language and being relegated to a specific domain, such as Wolfram's Mathematica, which has also found a niche in data science and machine learning...

Peter Wang, co-founder and CEO of Anaconda, maker of the popular Anaconda Python distribution for data science, cringes at Python's limitations for building desktop and mobile applications. "It's an embarrassing admission, but it's incredibly awkward to use Python to build and distribute any applications that have actual graphical user interfaces," he tells ZDNet. "On desktops, Python is never the first-class language of the operating system, and it must resort to third-party frameworks like Qt or wxPython." Packaging and redistribution of Python desktop applications are also really difficult, he says.

AI

Activists Turn Facial Recognition Tools Against the Police (nytimes.com) 78

An anonymous reader quotes a report from The New York Times: In early September, the City Council in Portland, Ore., met virtually to consider sweeping legislation outlawing the use of facial recognition technology. The bills would not only bar the police from using it to unmask protesters and individuals captured in surveillance imagery; they would also prevent companies and a variety of other organizations from using the software to identify an unknown person. During the time for public comments, a local man, Christopher Howell, said he had concerns about a blanket ban. He gave a surprising reason. "I am involved with developing facial recognition to in fact use on Portland police officers, since they are not identifying themselves to the public," Mr. Howell said. Over the summer, with the city seized by demonstrations against police violence, leaders of the department had told uniformed officers that they could tape over their name. Mr. Howell wanted to know: Would his use of facial recognition technology become illegal?

Portland's mayor, Ted Wheeler, told Mr. Howell that his project was "a little creepy," but a lawyer for the city clarified that the bills would not apply to individuals. The Council then passed the legislation in a unanimous vote. Mr. Howell was offended by Mr. Wheeler's characterization of his project but relieved he could keep working on it. "There's a lot of excessive force here in Portland," he said in a phone interview. "Knowing who the officers are seems like a baseline." Mr. Howell, 42, is a lifelong protester and self-taught coder; in graduate school, he started working with neural net technology, an artificial intelligence that learns to make decisions from data it is fed, such as images. He said that the police had tear-gassed him during a midday protest in June, and that he had begun researching how to build a facial recognition product that could defeat officers' attempts to shield their identity. Mr. Howell is not alone in his pursuit. Law enforcement has used facial recognition to identify criminals, using photos from government databases or, through a company called Clearview AI, from the public internet. But now activists around the world are turning the process around and developing tools that can unmask law enforcement in cases of misconduct.
The report also mentions a few other projects around the world that are using facial recognition tools against the police.

An online exhibit called "Capture," was created by artist Paolo Cirio and includes photos of 4,000 faces of French police officers. It's currently down because France's interior minister threatened legal action against Mr. Cirio but he hopes to republish them.

Andrew Maximov, a technologist from Belarus, uploaded a video to YouTube that demonstrated how facial recognition technology could be used to digitally strip away masks from police officers.

The report also notes that older attempts to identify police officers have relied on crowdsourcing. For example, news service ProPublica asks readers to identify officers in a series of videos of police violence. There's also the OpenOversight, a "public searchable database of law enforcement officers" that asks people to upload photos of uniformed officers and match them to the officers' names or badge numbers.
Programming

Kite Expands Its AI Code Completions From 2 To 13 Programming Languages (venturebeat.com) 19

An anonymous reader writes: Kite, which suggests code snippets for developers in real time, today added support for 11 more programming languages, bringing its total to 13. In addition to Python and JavaScript, Kite's AI-powered code completions now support TypeScript, Java, HTML, CSS, Go, C, C#, C++, Objective C, Kotlin, and Scala. (The team chose the 11 languages by triangulating the StackOverflow developer survey, Redmonk's language rankings, and its own developer submissions.) AI that helps developers is growing in popularity, with startups like DeepCode offering AI-powered code reviews and tech giants like Microsoft trying to apply AI to the entire application developer cycle. Kite stands out from the pack with 350,000 monthly developers using its AI developer tool. Kite debuted privately in April 2016 before publicly launching a cloud-powered developer sidekick in March 2017. The company raised $17 million in January 2019 and ditched the cloud to run its free offering locally. In May, Kite added JavaScript support, launched a Pro plan with advanced line-of-code completions for Python, and updated its engine to use deep learning, a type of machine learning.

Slashdot Top Deals