Programming Leftovers

-
ENIAC anniversary: What 75 years of computer technology have delivered
Although such advances make it possible for everyone to have access to advanced computer systems, Thompson believes programming skills are being eroded. “We are not teaching people how to do things any more,” he said.
One example is the trend for using low-code/no-code tooling to lower the skillset needed to create useful business applications. But, says Thompson: “Tasks get automated that shouldn’t be.” In other words, automation does not necessarily help to grow programming skills.
Glen Beck (background) and Betty Snyder (foreground) program ENIAC
Unlike a modern computing architecture, the ENIAC did not use memory; instead, it comprised a series of modules for performing calculations. Recalling his experiences of programming, Thompson says: “I remember working on mainframes with 6MB of memory. We needed to code in obscure ways to get the most from the machine.“Today’s programmers do less coding than before. Memory is limitless, I/O [input/output bandwidth] is not a problem. In a traditional sense, we are not doing data processing any more. Programmers today are building applications.”
-
A practical guide to JavaScript closures | Opensource.com
In 4 reasons why JavaScript is so popular, I touched on a few advanced JavaScript concepts. In this article, I will dive into one of them: closures.
According to Mozilla Developer Network (MDN), "A closure is the combination of a function bundled together (enclosed) with references to its surrounding state (the lexical environment)." Simplified, this means that a function inside another function can access the variables from the outer (parent) function.
-
Don’t be shady, deploy your JavaScript source maps
JavaScript source code minification is a beneficial tool for reducing download file sizes. However, the resulting obfuscation makes the code difficult to read, and reduces trust and transparency. Public source maps will help restore code readability and transparency. As a bonus, it enables others to learn from your code.
The Web Almanac 2020 found that 99,5 % of JavaScript is minified. It’s a more popular data-reduction strategy than using transport layer compression, which is at only 85 %. However, the 2019 Web Almanac found that only 18 % deployed source maps. This last number should be much higher.
-
[Older] Ruby gems: Using Linux/BSD packages vs. gem install
As a Ruby user and programmer, I thought that Linux distributions and BSD projects offered packaged versions of Ruby gems to add sanity and stability to a computer.
The problem is that every distribution and project packages a different subset of all the Ruby gems available.
I’ve always tried to use as many “packaged” gems as possible in the systems I run — chiefly Debian and Fedora Linux, along with OpenBSD.
If you only need a couple of gems, distribution packages might be the way to go. But once you start to pile up the gems and get one or more with a LOT of dependencies on other gems, the whole thing can get a bit tangled.
The documentation to my blogPoster project has included a lot on how to install gems with package managers like apt. I’m about to pull all of that out in favor of recommending that all Ruby gems be installed with Ruby’s own gem install program.
-
Python “tricks” I can not live without
There is plenty of similar articles on the web, but I just thought that I can add my perspective on the topic, and make the “tricks” list more complete. The code fragments used here are somehow crucial to my workflow and I am reusing them over and over again.
-
Zeeshan Ali: zbus and Implementing Async Rust API
As many of the readers already know, for the past (almost) 2 years, I've been developing a Rust-crate for D-Bus, called zbus. With this being my first big Rust project to start from scratch done almost entirely in my spare time, the progress was rather slow for many months. My perfectionism didn't help much with the progress either but also the fact that implementing a SerdeAPI for the D-Bus format was quite challenging. Then along came my old friend and ex-colleague, Marc-André Lureau who sped up the progress 10 times and soon after we had the 1.0 release of zbus.
While my original plan (perfectionism again) was for the API to be primarily async, with the synchronous API mostly just a wrapper around it, it was Marc-Andre who ended up doing most of the work and coming up with nice high-level API and his use case was primarily synchronous so we decided to go with synchronous API first. I still believe that was the right thing to do, since neither of us were familiar with async programming in Rust and going with the original plan would have meant the first release getting delayed by at least another half an year.
This may sound very disappointing to readers who come from glib programming background but a purely synchronous blocking API in a Rust app is not at all as bad it would be in a glib+C (or even Vala) app. There is a reason why Rust is famous for its fearless concurrency.
-
SVG: The Good, the Bad and the Ugly
I’m actually thinking about making a slim machine-focused vector graphics format (the name “SlimSVG” has been suggested
) and writing my own human-focused Haskell graphics creation library with similar goals for my own purposes in the future, maybe as a student research project for the university. In summary: Decide whether a language is for humans or for machines and do one of those things. And do the one thing well instead of both, but badly.
-

- Login or register to post comments
Printer-friendly version- 2055 reads
PDF version
More in Tux Machines
- Highlights
- Front Page
- Latest Headlines
- Archive
- Recent comments
- All-Time Popular Stories
- Hot Topics
- New Members
digiKam 7.7.0 is released
After three months of active maintenance and another bug triage, the digiKam team is proud to present version 7.7.0 of its open source digital photo manager. See below the list of most important features coming with this release.
|
Dilution and Misuse of the "Linux" Brand
|
Samsung, Red Hat to Work on Linux Drivers for Future Tech
The metaverse is expected to uproot system design as we know it, and Samsung is one of many hardware vendors re-imagining data center infrastructure in preparation for a parallel 3D world.
Samsung is working on new memory technologies that provide faster bandwidth inside hardware for data to travel between CPUs, storage and other computing resources. The company also announced it was partnering with Red Hat to ensure these technologies have Linux compatibility.
|
today's howtos
|








.svg_.png)
Content (where original) is available under CC-BY-SA, copyrighted by original author/s.

Recent comments
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago
1 year 11 weeks ago