Language Selection

English French German Italian Portuguese Spanish

Mac

The problems with Apple aren't just outages, they are injustices

Filed under
GNU
Mac

This November, both everyday users and privacy advocates found new reasons to be concerned about Apple. After an update to the latest version of their operating system, users found that they were unable to launch applications that were not written by Apple itself. This problem was caused by an Apple server outage. But why did the unavailabilty of a remote server prevent a user from launching a program on their own computer?

It turns out that each time a program is opened on macOS, it phones home via the Online Certificate Status Protocol (OCSP) to see if that application is "okay" to launch: it asks the corporation permission each time a new application is encountered, sending potentially identifying information along with that request. While this function only made news because of the recent server outage caused by the release of the newest version of macOS, Big Sur, research indicates that the report-back has existed in the operating system since September 2018, with the release of macOS Mojave. This is a classic case of proprietary software serving as an instrument of unjust power.

Although Apple does not directly receive the name of the application, but rather information on who developed it, most developers have only a very limited number of apps on the App Store, making it easy for Apple to infer. More disturbing yet is the other identifying information that is sent along with the request, which includes the user's approximate location and the current date and time.

Because macOS is so restricted, it leaves everyone, including free software developers, powerless to help users prevent their application use from being reported back to Apple. Due to the way the system is engineered, free software firewalls like LuLu are unable to block the information from being sent to Apple domains. Furthermore, the information is sent unencrypted over the network, potentially allowing a snoop to see which applications a user was trying to launch on their own computer. The request also bypasses any VPN, letting Apple know their approximate location even if the user has taken steps to stay anonymous.

Read more

macOS to FreeBSD migration a.k.a why I left macOS

Filed under
Mac
BSD

I think the title tells a lot about the story I’m going to tell you.

This is not a technical documentation for how I migrated from macOS to FreeBSD. This is a high-level for why I migrated from macOS to FreeBSD.

Not so long ago, I was using macOS as my daily driver. The main reason why I got a macbook was the underlying BSD Unix and the nice graphics it provides. Also, I have an iPhone. But they were also the same reasons for why I left macOS.

Read more

Also: Fiddling with OpenBSD ports

macOS to FreeBSD migration a.k.a why I left macOS

Filed under
Mac
BSD

This is not a technical documentation for how I migrated from macOS to FreeBSD. This is a high-level for why I migrated from macOS to FreeBSD.

Not so long ago, I was using macOS as my daily driver. The main reason why I got a macbook was the underlying BSD Unix and the nice graphics it provides. Also, I have an iPhone. But they were also the same reasons for why I left macOS.

I did not want to write this post right after the migration, I wanted to take my time, use FreeBSD daily, see if I will ever miss macOS.

Read more

Jussi Pakkanen: How Apple might completely take over end users' computers

Filed under
Mac

Many people are concerned about Apple's ongoing attempts to take more and more control of end user machines from their users. Some go so far as to say that Apple won't be happy until they have absolute and total control over all programs running on end user devices, presumably so that they can enforce their 30% tax on every piece of software. Whether this is true or not we don't really know.

What we can do instead is a thought experiment. If that was their end goal, how would they achieve it? What steps would they take to obtain this absolute control? Let's speculate.

Read more

User-hostile Hardware

Filed under
Hardware
Microsoft
Mac
  • Linus Torvalds wants Apple’s new M1-powered Macs to run Linux

    Earlier this month, Apple revealed its own ARM-based M1 processor, along with new MacBooks and a desktop Mac Mini powered by this chip. Reviewers across the globe have been praising Apple‘s first attempt, giving it high marks for performance and battery life.

    All this positive coverage has tempted many to take the plunge and buy one of the new machines — even if some apps are not running natively at the moment. Even Linus Torvalds, the principal developer of the Linux kernel, wants one.

    [...]

    Linux support on MacBooks would’ve made it a more attractive bet for programmers. However, I don’t think any engineers at the Cupertino campus plan to make that happen anytime soon. Sorry, Linus.

  • New Microsoft chip will come with added costs, says ex-NSA hacker

    Microsoft's new security chip, announced last week, will have an impact on hardware-only attacks, an American security professional says, adding that it could also assist in firmware security, but would result in added costs.

Proprietary Software and Security Issues

Filed under
Microsoft
Mac
Security

Linux vs. macOS: 15 Key Differences You Need to Know

Filed under
GNU
Linux
Mac

The tug of war between Linux and macOS continues to go through the test of time. The internet meme world concludes their major differences in the usual humorous manner. In their opinion, macOS is for the rich, and Linux is for the skilled. If we add the Windows operating system to this debate, then patience as an attribute would also be a highlight of discussion. However, no operating system is perfect, but there is a perfect being for each operating system.

The individual superiority in both Linux and macOS comes at a cost. This article is here to shed some light on the matter and, at the same time, remove the skeletons hiding in the two OS’s closets.

Linux vs. macOS

Since we are here to neither shame Linux nor macOS, we will look at the preference each operating system brings to the table when comparatively analyzed. However, the preferences might favor one operating system over the other. The final verdict will be in regards to performance flexibility and stability. It’s time to roll the dice on the first comparative topic.

Read more

Security and Proprietary Software Leftovers

Filed under
Microsoft
Mac
Security

  • Security updates for Wednesday

    Security updates have been issued by Arch Linux (chromium, firefox, gdm, linux-hardened, matrix-synapse, salt, sddm, and wordpress), Debian (firefox-esr, libmaxminddb, and moin), Fedora (cifs-utils, firefox, galera, java-latest-openjdk, mariadb, mariadb-connector-c, and wordpress), Gentoo (blueman, chromium, firefox, mariadb, qemu, salt, tmux, and wireshark), openSUSE (sddm), Oracle (kernel), Red Hat (kernel-alt, microcode_ctl, and rh-nodejs12-nodejs), SUSE (kernel, microcode_ctl, openldap2, python-waitress, spice-vdagent, u-boot, and ucode-intel), and Ubuntu (firefox, intel-microcode, linux, linux-aws, linux-azure, linux-gcp, linux-kvm, linux-oracle, linux-raspi, linux, linux-gcp, linux-gcp-4.15, linux-gcp-5.4, linux-gke-4.15, linux-gke-5.3, linux-hwe, linux-hwe-5.4, linux-oem, linux-oem-osp1, linux-oracle, linux-oracle-5.4, and moin).

  • Less than 6 months to 16.04 ESM: 6 things to prepare | Ubuntu

    Ubuntu 16.04 LTS Xenial Xerus will enter the extended security maintenance (ESM) period in April 2021. This article explains the ESM period and provides a guide for six key considerations when planning a migration path from Ubuntu 16.04 LTS.

    [...]

    2) Consider the full stack. The OS is a heart of the system, and an OS migration is a significant change that touches multiple aspects of your configuration, from the Linux kernel up to your applications. Remember to evaluate how the migration will impact your existing workloads and APIs as your current configuration might depend on specific versions of the applications and libraries that shipped with Ubuntu 16.04 LTS. You will likely find newer versions of applications and libraries if you choose a more recent version of Ubuntu (you can find a few examples below). Those versions might not be fully compatible with your overall configuration anymore after the migration.

  •                

  • Waves of attacks on US hospitals show a change in tactics for cybercriminals [iophk: Windows TCO]

                     

                       

    United States hospitals were targeted by two major cybersecurity attacks this fall: the first taking down Universal Health Services, a chain of hundreds of hospitals, and the second by a group called UNC1878 threatening hundreds of individual health care facilities all around the country. Targeting health care institutions directly marks a new approach for cybercriminals.

  •                

  • Ransomware Hits Dozens of Hospitals in an Unprecedented Wave [iophk: Windows TCO]

                     

                       

    On Wednesday evening, the Cybersecurity and Infrastructure Security Agency, Federal Bureau of Investigation, and Department of Health and Human Services warned that there is a "an increased and imminent cybercrime threat to US hospitals and health care providers," above and beyond the wave of attacks that have already occurred. The alert points to the notorious Trickbot trojan and Ryuk ransomware as the primary hacking tools involved in the attacks. Security analysts at private companies say that the activity is tied to the Russian criminal gang sometimes called UNC 1878 or Wizard Spider.

  •                

  • Ransomware Group Turns to Facebook Ads

                     

                       

    It’s not clear whether this was an isolated incident, or whether the fraudsters also ran ads using other [cracked] Facebook accounts. A spokesperson for Facebook said the company is still investigating the incident. A request for comment sent via email to Campari’s media relations team was returned as undeliverable.

  •                

  • On Apple's Piss-Poor Documentation

                     

                       

    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 → awful → despicable → 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.

Apple backtracks on App Store removal threat for Unix shell iOS apps

Filed under
Mac

Developers of Linux and Unix shells have received warnings from Apple that their iOS apps violate App Store Review Guidelines, with the threat of termination from the App Store said to be reversed in at least one instance.

A shell is a tool that enables users to perform command-line operations on a device, which usually doesn't offer that sort of functionality, such as the lack of a terminal in iOS. These terminal emulator apps like a-Shell and iSH enable the use of many Unix commands in iOS, which can be useful for developers and power users.

However, according to a series of tweets on Sunday, it seems that the two apps have come under fire from Apple's App Store team for seemingly violating the App Store Review Guidelines. The iSH Twitter account advised it was informed by Apple it would be removing the app from the App Store on Monday.

Read more

Proprietary Software and DRM/Monopoly

Filed under
Microsoft
Mac

  • FOSS Patents: Fortnite users continue to make in-app purchases on iOS that bypass Apple's payment system: court filing says "Epic is stealing money from Apple"

    In yesterday's filing, Apple says it has the right to sue Epic not only for breach of contract but also for tort, given that Epic would face tort liability "if [t]c had never executed the contracts with Apple and had instead found another way to smuggle Fortnite and its 'hotfix' payment mechanism into the App Store." Apple argues that a company protecting itself against such behavior through contracts must not be in a weaker legal position than one that doesn't. What Apple does clarify is that it won't seek "multiplicative recovery" if the same conduct on Epic's part constituted both a breach of an agreement and fraud. In other words, Apple would then content itself with only the greater of the two alternative amounts.

    It appears that the "hotfix" was just a simple data point on Epic's servers--not program code, but merely a trigger. When the iOS version of Fortnite checked on that data point, it offered an alternative payment mechanism to end users in circumvention of Apple's in-app payment rules.

    After the "hotfix" that Apple says became Epic's hot mess, Fortnite was removed from the App Store. That means it cannot be downloaded to iOS devices right now, and Epic has already failed twice (with a motion for a temporary restraining order as well as a motion for a preliminary injunction) to get a court to force Apple to tolerate an iOS version of Fortnite that bypasses Apple's in-app payment system.

  • Why Apple’s App Store Is Under Siege

    Fueling the fire was a report issued last week by House Democrats summing up an antitrust probe into four Big Tech companies — Apple, Amazon, Facebook and Google — and urging Congress to enact new laws to curb the companies’ power. The 449-page report called on Congress to enact new laws to curb the companies’ power, including prohibiting companies like Apple from operating “adjacent lines of business” (in other words, preventing it from offering its own apps in the App Store that compete with those from third parties).

    “Apple’s monopoly power over app distribution on iPhones permits the App Store to generate supra-normal profits,” the House Judiciary Committee report said.

  • Microsoft Says Long-Time Deals Executive Brown Leaving Company

    Microsoft Corp. said mergers and acquisitions chief Marc Brown is leaving the company after a more than two-decade stint working on deals ranging from LinkedIn to Nokia Oyj’s handset unit.

    Brown, vice president of corporate development, reported to Chief Financial Officer Amy Hood. Microsoft spokesman Frank Shaw on Friday confirmed Brown’s departure and declined to comment on a replacement. The company is still conducting a search for a senior business development executive to replace Peggy Johnson, who left in July to become chief executive officer at Magic Leap Inc.

  • Your brand new Oculus Quest 2 can’t play Oculus Go games, John Carmack confirms [Ed: Digital Restrictions (DRM) in action]

    If you bought a new Oculus Quest 2 with the hopes of experiencing games from the now-discontinued Oculus Go, I have bad news: the company has decided not to include support for Go titles on the Quest 2, Oculus’ consulting CTO John Carmack confirms on Twitter.

    When the Oculus Quest 2 launched three days ago, some people noticed there was no feature on the UI that allowed users to access Go apps and games, something the original Quest headset featured. Carmack did not go into much detail on why support was not added other than “[he] totally lost the internal debate over backwards compatibility.”

  •    

  • Three npm packages found opening shells on Linux, Windows systems [Ed: The writers at ZDNet are apt at blaming “LINUX” for security threats that have nothing to do with Linux. Now that Microsoft is serving malware ZDNet… blames “NPM” (ssshhhhh… don’t mention Microsoft)]
  •     
      

Syndicate content

More in Tux Machines

today's howtos

  • HOWTO: install MongoDB on Slackware

    Today I am going to show you how to install MongoDB, create a database admin account and enforce basic security. Why MongoDB when Slackware already has MariaDB? Well, the two are not comparable. MariaDB is a SQL database server, whereas MongoDB is a “NoSQL” database server, aka “Not only SQL“, and its queries – just like its object storage format – are in JSON. The two types of databases have entirely different usage targets. MongoDB is a ‘general-purpose, document-based database server‘. It has use-cases where it is more powerful than the traditional row/column model of a relational database management system. NoSQL databases, in particular MongoDB, are preferred over RDBMS in Cloud services, Big Data environments and for high-volume web based data processing services. These are typically environments where flexibility is required to handle big amounts of unstructured data and constantly varying schemas. A distributed cluster of MongoDB servers excels at “map-reduce“, the framework invented by Google for condensing large volumes of data into useful aggregated results – the very paradigm that catapulted Google Search into the number one position of search engines shortly after the turn of the millennium.

  • How to install Telegram on Linux Mint 20.1 - YouTube

    In this video, we are looking at how to install Telegram on Linux Mint 20.1.

  • How to install Badlion on a Chromebook

    Today we are looking at how to install Badlion on a Chromebook. Please follow the video/audio guide as a tutorial where we explain the process step by step and use the commands below. Please take note that you need the full account of Minecraft to use the application.

  • MariaDB/MySQL Auto-Сlustering with Load Balancing and Replication

    These days high availability and database clustering are very important for highly loaded production applications. If your server is down for a fraction of time, you are losing customers and money. Therefore making a database environment highly available has typically one of the highest priorities. Set up a highly available cluster is not easier for any developers and system administrators.

  • How To Fix The GIMP Eraser Not Working

    GIMP is a free and reasonably good alternative to Photoshop. The app’s UI isn’t the best or the most modern but it has all the tools that you’d find in Photoshop. GIMP has the same tools as Photoshop but many of its tools work differently and the workflow is different. Despite having the same tools, there is a noticeable difference between the two apps.

  • How to use screen command to improve your productivity on Linux terminal

    Similar to many tools utilized by system administrators, the Linux screen command is another great tool that helps with productivity. screen can be seen as an alternative to Tmux, but it has many other useful options outside of just saving screen space. screen allows you to create multiple sessions of terminals/interactive shells. In this tutorial I will give you a quick rundown of screen and present several use cases of the command.

  • Hunting Excel date twins

    Certain versions of Microsoft Excel for Mac counted days from 1 January 1904, while other Excel versions numbered their days from 1 January 1900. Microsoft calls these "the 1904 date system" and "the 1900 date system", and says there are problems you may encounter when you use workbooks that use different date systems. I wrote about one of those problems in a 2017 post for The Linux Rain blog. If you compile a spreadsheet using a mix of "1900" and "1904" dates, you might have the same record represented twice, with dates exactly 4 years and 1 day apart (1462 days). These pseudo-duplicates are "Excel date twins". The first twins I found (by accident) were in the Atlas of Living Australia (ALA) and had been imported from the Tasmanian Natural Values Atlas (TNVA). From the ALA they went to the Global Biodiversity Information Facility (GBIF). Both records say that I observed the peripatus species Ooperipatellus cryptus at a certain spot in Tasmania. One record says I did it on 3 February 1976, the other on 2 February 1972. The second date is an Excel date twin and impossible: I first came to Australia in January 1973.

  • Removing qtwebengine from a Gentoo Linux installation | Fitzcarraldo's Blog

    At the beginning of March I updated the world set in Gentoo Testing (~amd64) running the KDE suite (Plasma, Frameworks and Applications) on my secondary laptop, an eleven-year-old Compal NBLB2. It has a first-generation Core i7 CPU and the maximum amount of RAM that can be installed in that model (8 GB).

today's leftovers

  • Distro Hopping Doesn't Make Sense Too Me - YouTube

    I've been using Arch Linux since I first started with Linux and the idea of distro hopping jas just never appealed to me, not to say that I'll never leave Arch it's just that swapping for the sake of swapping seems kind of weird.

  • Quick Unboxing of my new Thelio Major

    I decided to show off the unboxing my my new desktop - I purchased a new Thelio Major desktop from System76. This particular unboxing was very awkward, the box was very tall and hard to position with my tripod. So please excuse the overall clumsiness of this entire video.

  • Run an Edge AI K3s Cluster on NVIDIA Jetson Nano Boards

    For several years I have worked with customers who wanted to use artificial intelligence (AI) in their products (mostly embedded hardware) but ended up relying on the cloud. With the advances of embedded platforms in recent years, this dependency is gradually disappearing, giving rise to the so-called Edge AI.

  • Traditional doesn’t mean staid: how banks should be innovating today

    When looking into a fiduciary for your assets, a bank with a long-standing history may seem like a stable, trustworthy choice. However, that very legacy may be one of the reasons large banks lose out to the competition in an age where customers are expecting open, quick, and real-time banking. Not unique to banks, big companies have a challenge of navigating legacies. These legacies do not just pertain to mainframes with monoliths on them, but also how they work. Along with their associates, senior managers should also show a desire to change. It’s harder to move fast if you are huge, but embracing an open culture from the top down can be a good starting point. I’ve seen huge amounts of talent, smart people, and big budgets hindered by a staid way of working. The strategy still needs to come from the top, but everyone should be enabled—and perhaps more importantly, empowered—to contribute. Regulations have forced banks to be more siloed, and now they continue to operate like that because it is easier, and traceable. IT in a bank was merely a cost center, a service provider until about 10 years ago. Technology was never an enabler, but seen as a cost-sink. We’re still struggling with this mindset today, even though we have continuously seen how technology can be a competitive differentiator. Large banks often don’t know where to start with some of their legacy, often the product of mergers and acquisitions. Then, you throw in a pandemic, during which the world of banking had to transform at a rapid pace to expand digital banking and chatbot services, and it ends up being a lot to take on all at once for large institutions. It can feel easier to keep legacy systems in place to stay afloat. Traditional banks still need help with faster transaction times, integrating artificial intelligence to improve the customer experience, and implementing agile ways of working for their IT teams. The hurdle lies in figuring out a way to get started. As a customer, I saw this innovation from Red Hat.

  • Quick-publishing of poudriere packages

    An essential tool in the FreeBSD porter’s arsenal (“porters” are the people who package third-party software, software like KDE Plasma, Haskell, ..) is poudriere, which is an evolution of the old tinderbox. It leverages ZFS and FreeBSD jails to do clean, consistent builds even on an otherwise occupied workstation, and can build for OS versions and architectures you’re not even running. Using the packages you’ve built can be slightly harder, so here’s some notes. Poudriere has a chapter in the porter’s handbook. There are straightfoward guides to setting it up, also on DigitalOcean. Most of those guides describe setting up nginx to serve the lovely and detailed build progress and results. I tend to follow the build progress in konsole, so I’m not interested in that part. What I do need to do is serve the resulting packages to other machines on my local network (e.g. my laptop) so that everything can enjoy the latest packages. That is doubly useful when trying out things like KDE Plasma on Wayland on FreeBSD, which needs plenty of testing and doesn’t work on all my hardware. tl;dr Install lighttpd, write 2-line configuration file, run lighttpd; on client, configure pkg to use what lighttpd serves.

  • Intel Already Started Working On Linux Driver Code For Lunar Lake - Phoronix

    While Intel 11th Gen Rocket Lake desktop processors are launching this month, Intel's open-source Linux driver developers known for their punctual support are already preparing early code around their 14th Gen "Lunar Lake" platform. Intel's punctual open-source/Linux support across desktop, mobile, and server platforms is one of the strong selling points for those preferring to use something on their PC besides Windows (Intel normally also does more for BSD/FreeBSD than other vendors as well). A year ago Intel began upstreaming their Rocket Lake Linux enablement code and that was quickly followed by Alder Lake, which we'll hopefully see launch before the end of the calendar year. Towards the end of 2020 Intel open-source developers were already working on the initial support around Meteor Lake while now as we end Q1'2021, there are patches beginning to surface for Lunar Lake, the successor to Meteor Lake and what will be Intel's 14th Gen client processors.

Free Software Leftovers

  • The Brave Browser Will Launch Its Own Search Engine

    Google is so synonymous with searching the Internet that it’s become a verb. There are other companies and some browsers that have developed their own search engines, but none of them have really been able to compete. The company behind the Brave browser intends to change that. It’s launching the Brave search engine. [...] Eich says Brave Search already has a waitlist for its launch in the first half of 2021 and vows not to track or profile users. “Brave already has a default anonymous user model with no data collection at all,” boasts the Brave founder. The search engine will do the same – IP addresses will not be collected. His company is exploring how to have both a paid no-ads search engine and a free one supported by ads.

  • Trying Brave Browser. Will it win me over?

    So many people have suggested that I try Brave instead of Firefox. So here's my trying it out. Will it earn my undying affection as it has so many others?

  • MIT/GNU Scheme version 11.2 is released

    This includes a bunch of bug fixes to 11.1, but is otherwise the same. Download from the usual place.

  • LibreOffice QA/Dev Report: February 2021
  • NGI POINTER offers funding for internet/web architects

    The NGI POINTER organization, which is funded by the European Commission, has put out its second open call for providing development/research funding; the first open call was in April 2020. This time around, the organization is looking for individuals or projects that are working on "changing the Internet and Web with European Values at its core". The goal is to "support promising bottom-up projects that are able to build, on top of state-of-the-art research, scalable protocols and tools to assist in the practical transition or migration to new or updated technologies, whilst keeping European Values at the core". Those interested may want to look at some of the previously funded projects; more information can also be found in the Work Programme [PDF].

  • How Open Source Makes SAP More Manageable [Ed: SUSE now doing shameless openwashing of proprietary software of SAP]

    SAP continues to help drive the digital transformation of tens of thousands of companies of all sizes and sectors. In fact, SAP software touches nearly every aspect of how modern businesses are run. And with continued improvements to the platform, SAP is helping businesses to constantly move forward, to make them more capable, powerful, and agile.

Programming Leftovers

  • Fedora Magazine: How to use Poetry to manage your Python projects on Fedora

    Python developers often create a new virtual environment to separate project dependencies and then manage them with tools such as pip, pipenv, etc. Poetry is a tool for simplifying dependency management and packaging in Python. This post will show you how to use Poetry to manage your Python projects on Fedora. Unlike other tools, Poetry uses only a single configuration file for dependency management, packaging, and publishing. This eliminates the need for different files such as Pipfile, MANIFEST.in, setup.py, etc. It is also faster than using multiple tools. Detailed below is a brief overview of commands used when getting started with Poetry.

  • Rakudo Weekly News: 2021.10 Automated Star

    Patrick Spek has announced the release of the Rakudo Star 2021.02.1 package (based on the 2021.02.1 Rakudo Compiler release). This is the first time this has happened using a Github Action workflow. Binary releases are not yet available: like everything in the Raku Programming Language, it is the work of volunteers. To create MacOS and Windows installable packages, a volunteer is needed to create the Github Actions workflow for MacOS and/or Windows! The advantage being that this way, you would only need to do this once instead of for each release! So please, stand up if you have the know-how and time to do it!

  • Git Reset to Remote Head – How to Reset a Remote Branch to Origin

    Branching is a core concept in Git. It can help you set up a distributed workflow for team collaboration and makes your development process more efficient. When you're using version control and you're distributing features across branches, there's a lot of communication between your local computer and your online repository on GitHub. During this process, you might need to reset back to the project's original copy. If resetting a branch scares you, then don't worry – this article will introduce you to remote branches, remote head, and how you can easily reset a remote branch to remote head.

  • Sparse Arrays vs Dense Arrays in JavaScript — Explained with Examples

    I had a really interesting bug recently that, at first glance, completely stumped me.

  • Ravgeet Dhillon: Turn a Google Sheet into a REST API

    What if we can use our Google Sheets as a CMS? What if we want the data in our Google Sheet to be publicly available. This can be done easily using Google Sheets and Google Apps Script. In this blog, we will take a look at how we can convert a Google Sheet into a REST API and access it publicly from any app we want. [...] Let us send a GET request to our published Web App using Postman. The path for the GET request would be our Web App’s URL and query parameter path set to our Google Sheet’s name.

  • Use Scheme functional programming language with LambdaChip Alonzo STM32 board

    Most MCU-based embedded systems come with firmware programmed with assembler, C, and/or C++. But as referenced in a paper published in 2000 entitled ” Point of view: Lisp as an alternative to Java“, functional programming languages like Lisp or Scheme may lead to shorter development times compared to C/C++ or Java. That’s with this idea in mind that LambdaChip was created. It is a lightweight, open-source virtual machine designed to run on embedded systems with limited resources, for instance, an 80MHz microcontroller with 50KB RAM, and programmable with Scheme multi-paradigm programming language, a dialect of Lisp widely used for functional programming research and teaching. The company behind the project, also called LambdaChip, has just created its own hardware with LambdaChip Alonzo, an STM32 Cortex-M4 development board with 512KB flash, 128KB RAM, and that also comes with Bluetooth LE connectivity.

  • What’s coming in Java 16

    Java 16 is scheduled to be released on March 16. Here is a look at what changes you can expect in the release. JEP 338: Vector API (Incubator) This Java Enhancement Proposal (JEP) will provide an initial iteration of an incubator module that can express vector calculations that are compiled at runtime. This module will be clear and concise, platform agnostic, have reliable runtime compilation and performance on x64 and AArch64 architectures, and offer graceful degradation when a vector computation cannot be fully expressed, the OpenJDK team explained.

  • 10 questions for modernizing your old Java applications

    I recently open sourced an application modernization sample, which demonstrates how to modernize an old (2010) Java EE application to become a modern (2021) cloud-native application.