Coding tools news 2022

Here is a post where I post information on new and interesting coding tools on the comments.

762 Comments

  1. Tomi Engdahl says:

    Python kärjessä, MATLAB laskussa
    https://etn.fi/index.php/13-news/13447-python-kaerjessae-matlab-laskussa

    TIOBE-indeksi on jo vuosia rankannut ohjelmointikielten suosiota verkkohakujen perusteella. Vaikka mittari ei liene absoluuttisen tarkka, se kuvaa hyvin käytetyimpien kielten suosiota. Huhtikuun listalla ykköseksi viime syksyn aikana noussut Python jatkaa ykkösenä.

    Pythonin nousu on ollut nopeaa. Vielä vuosi sitten se oli TIOBE-listalla sijalla kolme. Ykkösenä ohjelmoijien verkkohauissa oli tuolloin C, joka nyt on toiseksi suosituin. Java on vuodessa pudonnut 2-sijalta kolmanneksi, joten käytännössä koodaajien suosikit ovat pysyneet hyvin samanlaisina jo pidempään.

    Reply
  2. Tomi Engdahl says:

    Is there an equation for a triangle?
    https://www.youtube.com/watch?v=4K-Jx914NcQ

    Viewer comments:

    The Sign Function is perfectly legitimate. The history of math is littered with mathematicians making up functions as needed to complete a task. I was in the “obviously not” camp, but it turns out a triangle does have an equation!

    You can easily argue that the sign function is a “more fundamental” source of discontinuity than absolute value, cause absolute value (and many other discontinuous functions) can easily be defined in terms of sign.
    Abs already has very inconvenient properties (rip possibly-decidable integration), sign doesn’t make it worse

    Hey Matt, your psychedelic triangles look a lot like optical interference patterns, specifically conoscopic interference patterns. Visually, I’ve seen the same effect in moiré patterns on curved surfaces.

    I accidentally discovered them in high school with a diffraction grating sandwiched between two rotated polarizers. I’ve since graduated university with a degree in physics and subsequently learned the name of the phenomenon, but your video has given me a discrete step in understanding how these patterns are mathematically derived. Thank you!

    Reply
  3. Tomi Engdahl says:

    Github Tutorial without using Command Line
    https://www.youtube.com/watch?v=tCuPbW31vAw

    Today, working with GitHub is a fundamental skill. Most libraries and projects reside on GitHub, and we have to know how to use them. GitHub can also enhance our work procedure, and a lot of employers will ask you for your GitHub account or will check it out before they invite you for an interview. So GitHub seems to be at least as important as LinkedIn for a professional developer’s career.
    This video will teach you the basics to start with GitHub and use it for your Arduino projects. And I promise: We will avoid the command line!

    Reply
  4. Tomi Engdahl says:

    https://www.facebook.com/126000117413375/posts/5655754507771214/
    Did you know? PHP has an inbuilt syntax check only linter. You can invoke it from Linux or Unix CLI:
    php -l myphp.php
    php8 -l lib.php
    php8-cli -l code.php

    Very handy for large scripts and get the exact location where you missed stupid ‘;’ the mortal enemy of every developer

    PS: Any person who will shame me for using PHP may be struck by lightning. Lmao.

    Reply
  5. Tomi Engdahl says:

    Linux Disabling Raw Access To Floppy Disks “FDRAWCMD” By Default
    https://www.phoronix.com/scan.php?page=news_item&px=Linux-Disable-FDRAWCMD

    It’s been a rough year for floppy disk support on Linux and goes to show the state of seldom maintained to unmaintained code.

    Earlier this year the Linux floppy disk driver in the 5.17 kernel saw a fix to avoid hanging if trying to read and then eject a broken floppy. Last year was also a Linux floppy fix for a regression that had been around for a half-year before being noticed.

    The latest floppy pain is a concurrency use-after-free issue being uncovered within the floppy code when using its raw command ioctl (FDRAWCMD). The FDRAWCMD ioctl is used for sending raw commands to the floppy disk controller. This can be used for dealing with non-standard disks, interacting with copy-protected disks, and other non-standard usage.

    Given the FDRAWCMD is just used for non-standard use-cases, the easiest fix is just disabling that interface by default.

    So added today to Linux Git is now BLK_DEV_FD_RAWCMD that by default keeps this ioctl disabled unless you need to send raw floppy disk commands in 2022 to your floppy disk controller in which case you can enable it. The ioctl is being considered deprecated and will be removed outright in the future.

    This change due to being security in nature was merged today to mainline for Linux 5.18.

    Reply
  6. Tomi Engdahl says:

    Did you know? You can use cpufetch command to display on Linux, macOS, FreeBSD, Android, and Windows to fetch CPU details. See https://www.cyberciti.biz/open-source/install-cpufetch-on-linux-macos-android-to-get-cpu-architecture-info/?utm_source=Social_Media&utm_medium=Facebook&utm_campaign=May_07_2022 for more info.

    Reply
  7. Tomi Engdahl says:

    11 Myths About Vulkan
    April 19, 2022
    Vulkan can expose compute functionality without exposing graphics capabilities. CoreAVI’s Neil Stroud dispels the myths that have emerged about the technology.
    https://www.electronicdesign.com/technologies/embedded-revolution/article/21238533/coreavi-11-myths-about-vulkan?utm_source=EG+ED+Auto+Electronics&utm_medium=email&utm_campaign=CPS220415021&o_eid=7211D2691390C9R&rdx.ident%5Bpull%5D=omeda%7C7211D2691390C9R&oly_enc_id=7211D2691390C9R

    What you’ll learn:

    What is Vulkan?
    Details on the Vulkan SC safety-critical standard.
    How much do Vulkan and the variant Vulkan SC differ?

    March 1, 2022 marked a pivotal day in the world of safety systems: The Khronos Group ratified the Vulkan SC API standard. “Commercial” Vulkan has been available for some time. It’s used in a diverse array of both graphics and compute applications to maximize the capabilities and performance of the underlying GPU architecture. It also offers a quick and efficient, open standards-based means to scale across diverse architectures.

    However, the safety-critical (SC) variant promises to bring those same vectors to developers of safety systems while also offering a path to certifying the software stack to meet various industry safety standards, such as ISO 26262 (automotive), IEC 61508 (industrial), and DO-178C (avionics). The following aims to dispel some of the common myths surrounding the Vulkan API standard.

    Reply
  8. Tomi Engdahl says:

    Browser Developer Tools Tutorial: 10+ Tricks You Must Know
    https://torquemag.io/2020/06/browser-developer-tools-tutorial/

    Reply
  9. Tomi Engdahl says:

    AVX-512: When The Bits Really Count
    https://hackaday.com/2022/05/09/avx-512-when-the-bits-really-count/

    For the majority of workloads, fiddling with assembly instructions isn’t worth it. The added complexity and code obfuscation generally outweigh the relatively modest gains. Mainly because compilers have become quite fantastic at generation code and because processors are just so much faster, it is hard to get a meaningful speedup by tweaking a small section of code. That changes when you introduce SIMD instructions and need to decode lots of bitsets fast. Intel’s fancy AVX-512 SIMD instructions can offer some meaningful performance gains with relatively low custom assembly.

    Fast bitset decoding using Intel AVX-512
    https://lemire.me/blog/2022/05/06/fast-bitset-decoding-using-intel-avx-512/

    Reply
  10. Tomi Engdahl says:

    Frederic Lardinois / TechCrunch:
    Google launches Flutter 3, making the multiplatform UI development framework generally available on Linux and macOS, as well as adding support for Apple Silicon

    https://techcrunch.com/2022/05/11/googles-flutter-3-adds-support-for-macos-and-linux-desktop-apps/

    Reply
  11. Tomi Engdahl says:

    10 Things JavaScript Developers Have STOPPED Doing – Are you doing them?
    https://www.youtube.com/watch?v=BtXS5KuGkR0

    JavaScript has changed. Are you keeping up? Let’s talk about 10 things JavaScript developers have stopped doing in the last several years.

    00:00 – Intro
    01:00 – TypeScript
    02:30 – For Loops
    04:20 – Arrow Functions
    05:50 – JavaScript This
    09:14 – Const and Let vs Var
    10:40 – Commenting Code
    12:35 – Optional Chaining
    14:50 – Browser Compatibility
    16:25 – Debugging

    Reply
  12. Tomi Engdahl says:

    Asynchronous JavaScript in ~10 Minutes – Callbacks, Promises, and Async/Await
    https://www.youtube.com/watch?v=670f71LTWpM

    The asynchronous nature of JavaScript to understanding the language. You’ll find the use of callbacks, promises, and async/await in code that you write every day as a JavaScript developer. In this JavaScript tutorial, you’ll learn about all three in about 10 minutes.

    00:00 – Intro
    01:15 – Callbacks
    03:20 – Error First Callback
    05:00 – Promises
    10:00 – Async/Await

    Reply
  13. Tomi Engdahl says:

    33 Concepts JavaScript Developers “SHOULD Know” (I don’t know all of them…)
    https://www.youtube.com/watch?v=2alCBdPcadM

    A list of 33 concepts that every JavaScript developer should know according to this Github repository. In this video, I’ll walk through the entire list and either explain it or admit I don’t know.

    I think a lot of people get confused about call-by-value and call-by-reference. Everything in JavaScript is call-by-value. Some of those values are references.

    Reply
  14. Tomi Engdahl says:

    WebRTC in 100 Seconds // Build a Video Chat app from Scratch
    https://www.youtube.com/watch?v=WmR9IMUD_CY

    Want to build your own peer-to-peer video chat app? WebRTC is a technology that creates a realtime connection between browsers where users can exchange audio/video streams

    00:00 WebRTC Explained
    02:01 Build your own Video Chat
    3:37 Code setup
    04:34 Peer Connection & Webcam
    06:49 Offer Signaling
    09:45 Answer Signaling

    https://fireship.io/lessons/webrtc-firebase-video-chat/

    Source Code

    https://github.com/fireship-io/webrtc-firebase-demo

    Reply
  15. Tomi Engdahl says:

    7 Database Paradigms
    https://www.youtube.com/watch?v=W2Z7fbCLSTw

    00:00 Intro
    00:45 Key-value
    01:48 Wide Column
    02:47 Document
    04:05 Relational
    06:21 Graph
    07:22 Search Engine
    08:27 Multi-model

    https://fireship.io/lessons/top-seven-database-paradigms/

    Reply
  16. Tomi Engdahl says:

    How to OVER Engineer a Website // What is a Tech Stack?
    https://www.youtube.com/watch?v=Sxxw3qtb3_g

    A “tech stack” includes all the technologies used to build a complete web or mobile application – like frameworks, cloud services, libraries, languages, and APIs. Let’s over-engineer a tech stack for an MVP, then simplify it. Learn how to build fullstack apps

    Reply
  17. Tomi Engdahl says:

    How to Learn to Code – 8 Hard Truths
    https://www.youtube.com/watch?v=NtfbWkxJTHw

    Learning to code can open many doors in life, but it’s NOT easy and NOT for everybody. Let’s take a look at 8 different techniques supported by science that can help you become a programmer faster.

    Chapters

    00:00 Learn to Code
    00:43 1. Hard Work
    01:29 2. Patterns over Syntax
    02:38 3. Stop Watching
    03:22 4. Stay Healthy
    03:47 5. Feynman Technique
    05:00 6. Dopamine Hits
    05:47 7. Not Too Hard tho
    06:27 8. Learn Like a Pro

    Reply
  18. Tomi Engdahl says:

    The Art of Code – Dylan Beattie
    https://www.youtube.com/watch?v=6avJHaC3C2U

    Software and technology has changed every aspect of the world we live in. At one extreme are the ‘mission critical’ applications – the code that runs our banks, our hospitals, our airports and phone networks. Then there’s the code we all use every day to browse the web, watch movies, create spreadsheets… not quite so critical, but still code that solves problems and delivers services.

    But what about the code that only exists because somebody wanted to write it? Code created just to make people smile, laugh, maybe even dance? Maybe even code that does nothing at all, created just to see if it was possible?

    Join Dylan Beattie – programmer, musician, and creator of the Rockstar programming language – for an entertaining look at the art of code. We’ll look at the origins of programming as an art form, from Conway’s Game of Life to the 1970s demoscene and the earliest Obfuscated C competitions. We’ll talk about esoteric languages and quines – how DO you create a program that prints its own source code? We’ll look at quine relays, code golf and generative art, and we’ll explore the phenomenon of live coding as performance – from the pioneers of electronic music to modern algoraves and live coding platforms like Sonic Pi.

    Reply
  19. Tomi Engdahl says:

    Python jatkaa Tiobe-indeksin listalla suosituimpana ohjelmointikielenä ennen C-kieltä ja javaa, mutta listalla on myös käynnissä muutoksia. Yksi niistä on C#:n suosion kasvun. Indeksin ylläpitäjät uskovat, että C# sattaa nousta kolmen suosituimman ohjelmointikielen joukkoon tänä vuonna.

    Syitä C#:n suosion kasvulle on useita, mutta tärkeimmäksi nostetaan se, että kieltä käytetään yhä enemmän Linuxilla.

    https://etn.fi/index.php/13-news/13588-c-kasvattaa-suosiotaan

    Reply
  20. Tomi Engdahl says:

    TIOBE Index for May 2022
    May Headline: C# gains most ranking points
    https://www.tiobe.com/tiobe-index/

    Reply
  21. Tomi Engdahl says:

    Things Are Getting Rusty In Kernel Land
    https://hackaday.com/2022/05/17/things-are-getting-rusty-in-kernel-land/

    There is gathering momentum around the idea of adding Rust to the Linux kernel. Why exactly is that a big deal, and what does this mean for the rest of us? The Linux kernel has been just C and assembly for its entire lifetime. A big project like the kernel has a great deal of shared tooling around making its languages work, so adding another one is quite an undertaking. There’s also the project culture developed around the language choice. So why exactly are the grey-beards of kernel development even entertaining the idea of adding Rust? To answer in a single line, it’s because C was designed in 1971, to run on the minicomputers at Bell Labs. If you want to shoot yourself in the foot, C will hand you the loaded firearm.

    On the other hand, if you want to write a kernel, C is a great language for doing low-level coding. Direct memory access? Yep. Inline assembly? Sure. Runs directly on the metal, with no garbage collection or virtual machines in the way? Absolutely. But all the things that make C great for kernel programming also make C dangerous for kernel programming.

    Now I hear your collective keyboards clacking in consternation: “It’s possible to write safe C code!” Yes, yes it is possible. It’s just very easy to mess up, and when you mess up in a kernel, you have security vulnerabilities. There’s also some things that are objectively terrible about C, like undefined behavior.

    Rust seems to be gaining popularity. There are some ambitious projects out there, like rewriting coreutils in Rust. Many other standard applications are getting a Rust rewrite. It’s fairly inevitable that the collection of Rust developers started to ask, could we invade the kernel next? This was pitched for a Linux Plumbers Conference, and the mailing list response was cautiously optimistic. If Rust could be added without breaking things, and without losing the very things that makes Rust useful, then yes it would be interesting.

    Why Rust

    So what makes Rust so interesting? There are two main answers here. First, it’s a modern language with a strong memory-safety guarantee. (There’s a caveat here, and we’ll cover unsafe code later.) Something around two thirds of all security vulnerabilities are a result of memory handling bugs, and Rust pretty much eliminates those. A second bonus, Rust has some of the niceties we’ve come to appreciate in modern languages, like an easy-to-use STRING type built-in to the standard library, and some handy functions for common scenarios like string comparison.

    The other answer is that Rust is an easy fit with C code and kernel programming. Rust does it’s magic in the compiler. The code you write is what actually runs, without an interpreter or garbage collection trying to be helpful. Rust hasn’t overdosed on Object Oriented patterns, but meshes nicely with the C-style structs already used in the kernel. Even the stack model is very similar to C.

    There’s one problem with Rust’s memory-safe guarantee — it’s impossible to write a kernel that is formally memory-safe. A kernel has to write to unallocated memory, do weird pointer math, and other seemingly bizarre things to actually make our computers work. This doesn’t work well with a language that tries to guarantee that memory manipulations are safe. How do you write kernel code with Rust, then? Rust has added the unsafe keyword, allowing use of direct memory access and other such techniques that don’t work with Rusts’s memory guarantees. Keep the potential problems together, and it makes auditing easier.

    There’s at least one other language that may come to mind as an incremental update to C that tries to do some of these things: C++. Surely this would have been even a better fit, right? Kernel devs have some strong feelings about that idea. To put it gently, none of the improvements in C++ are useful in the context of the kernel, and some of the other changes just get in the way.

    What’s the Plan?

    So are we about to see the kernel completely rewritten in Rust? Not likely. The kernel development process is painstakingly conservative, so the initial introduction of Rust is going to be done in the least obtrusive way possible — driver code. As kernel second-in-command [Greg Kroah-Hartman] put it, “drivers are probably the first place for an attempt like this as they are the ‘end leafs’ of the tree of dependencies in the kernel source. They depend on core kernel functionality, but nothing depends on them.”

    Reply
  22. Tomi Engdahl says:

    Frederic Lardinois / TechCrunch:
    Google Cloud launches new software supply chain and zero trust tools, including one that gives governments and enterprises access to vetted open-source packages — Google Cloud is holding its annual Security Summit this week and unsurprisingly, the company used the event to launch a few new security features.

    Google Cloud launches new software supply chain and zero trust security services
    https://techcrunch.com/2022/05/17/google-cloud-launches-new-software-supply-chain-and-zero-trust-security-services/

    Google Cloud is holding its annual Security Summit this week and unsurprisingly, the company used the event to launch a few new security features. This year, the announcements focus on software supply chain security, Zero Trust and tools for making it easier for enterprises to adopt Google Cloud’s security capabilities.

    It’s no surprise that software supply chain security makes an appearance at this year’s event. Thanks to recent high-profile attacks, it’s been the focus of White House summits and, just last week, an industry group that includes Google, Amazon, Ericsson, Intel, Microsoft and VMware pledged $30 million to work with the Linux Foundation and Open Source Security Foundation to improve the security of open-source software.

    At today’s Summit, Google Cloud announced the launch of its Assured Open Source Software service, which gives enterprises and government users access to the same vetted open source packages that Google itself uses in its projects. According to the company, these packages are regularly scanned, analyzed and fuzz-tested for vulnerabilities and built with Google Cloud’s Cloud Build service with evidence of SLSA-compliance (that’s “Supply-chain Levels for Software Artifacts,” a framework for safeguarding artifact integrity across software supply chains). These packages are also signed by Google and distributed from Google’s secured registry. “Assured OSS helps organizations reduce the need to develop, maintain and operate a complex process for securely managing their open source dependencies,” Google explains in its announcement today.

    Also new today is BeyondCorp Enterprise Essentials, a new edition of Google Cloud’s BeyondCorp Enterpirse Zero Trust solution that promises to “help organizations quickly and easily take the first steps toward Zero Trust implementation.”

    Finally, Google is also launched a new Security Foundation solution for enterprises that aims to make it easier for them to adopt Google Cloud’s security capabilities. It joins Google’s other ready-made solutions, which so far have focused on specific industries (retail, media and entertainment, financial services, etc.) as opposed to this more general security-centric package.

    Reply
  23. Tomi Engdahl says:

    Study for Microsoft certifications with over 120 hours of training for $59
    This $59 e-learning bundle contains an entire career’s worth of Microsoft training.
    https://www.zdnet.com/article/study-for-microsoft-certifications-with-over-120-hours-of-training-for-59/

    Reply
  24. Tomi Engdahl says:

    Linux haluaa eroon C-kielestä
    https://etn.fi/index.php/13-news/13612-linux-haluaa-eroon-c-kielestae

    Linux-ydin koodataan lähestulkoon kokonaan C-kielellä. C ja C++ tuovat mukanaan haavoittuvuuksia useille saiteille ja verkkosovelluksiin, koska niiden muistinhallinta on puutteellinen. Nyt käynnissä on hanke, jossa halutaan siirtyä avoimen koodin hankkeissa modernimpiin, turvallisempiin kieliin kuten Rust ja Go.

    Suuri osa nykyaikaisista Internet-ohjelmistoista on koodattu C:llä, mikä johtaa suureen määrään haavoittuvuuksia vuosittain. Noin 70 prosenttia Microsoftin alustoilla olevista haavoittuvuuksista vuosina 2006–2018 johtui muistin turvallisuusongelmista. Vuonna 2020 Google raportoi, että 70 prosenttia Chromen haavoittuvuuksista johtui muistinhallinnasta.

    Rust-koodia on sisällytetty Linux-ytimeen jo pitkään ja viime syksynä tilanne parani entisestään, kun kehittäjille saatiin vakaa Rust-käännin.

    Asialla ovat avoimen lähdekoodin tärkeimmät säätiöt, OpenSSF eli Open Source Security Foundation ja Linux Foundation. Ne ovat esittäneet Jos Bidenin hallinnolle ohjelmaa, jossa näistä kyberturvattomista kielistä päästäisiin eroon. Hankkeeseen voi tutustua täällä.

    THE OPEN SOURCE SOFTWARE SECURITY MOBILIZATION PLAN1
    W H I T E PA P E R
    The Open Source
    Software Security
    Mobilization Plan
    https://8112310.fs1.hubspotusercontent-na1.net/hubfs/8112310/OpenSSF/White%20House%20OSS%20Mobilization%20Plan.pdf?hsCtaTracking=3b79d59d-e8d3-4c69-a67b-6b87b325313c%7C7a1a8b01-65ae-4bac-b97c-071dac09a2d8

    Reply
  25. Tomi Engdahl says:

    Linux And C In The Browser
    https://hackaday.com/2022/05/28/linux-and-c-in-the-browser/

    There was a time when trying to learn to write low-level driver or kernel code was hard. You really needed two machines: one to work with, and one to screw up over and over again until you got it right. These days you can just spin up a virtual machine and roll it back every time you totally screw up. Much easier! We don’t think it is all that practical, but [nsommer] has an interesting post about loading up a C compiler and compiling Linux for a virtual machine. What’s different? Oh, the virtual machine is in your browser.

    The v86 CPU emulator runs in the browser and looks like a Pentium III computer with the usual hardware. You might think it is slow and it certainly isn’t going to be fast as a rocket, but it does translate machine code into WebAssembly, so performance isn’t as bad as you might think.

    Linux and Tiny C Compiler in the browser, part one
    https://ja.nsommer.dk/articles/linux-and-tiny-c-compiler-in-the-browser-part-one.html

    Reply
  26. Tomi Engdahl says:

    Clang In Browser is pretty impressive
    https://tbfleming.github.io/cib/

    Reply
  27. Tomi Engdahl says:

    7 Cryptography Concepts EVERY Developer Should Know
    https://www.youtube.com/watch?v=NuyzuNBFWxQ

    Cryptography is scary. In this tutorial, we get hands-on with Node.js to learn how common crypto concepts work, like hashing, encryption, signing, and more
    https://fireship.io/lessons/node-crypto-examples/

    Chapters

    00:00 What is Cryptography
    00:52 Brief History of Cryptography
    01:41 1. Hash
    04:07 2. Salt
    05:47 3. HMAC
    06:35 4. Symmetric Encryption.
    08:19 5. Keypairs
    09:29 6. Asymmetric Encryption
    10:22 7. Signing
    11:31 Hacking Challenge

    Reply
  28. Tomi Engdahl says:

    Why Isn’t Functional Programming the Norm? – Richard Feldman
    https://www.youtube.com/watch?v=bVJ-mWWL7cE

    Richard is a member of the Elm core team, the author of Elm in Action from Manning Publications, and the instructor for the Intro to Elm and Advanced Elm courses on Frontend Masters. He’s been writing Elm since 2014, and is the maintainer of several open-source Elm packages including elm-test and elm-css packages.

    Reply
  29. Tomi Engdahl says:

    Branchless Programming: Why “If” is Sloowww… and what we can do about it!
    https://www.youtube.com/watch?v=bVJ-mWWL7cE

    In this video we look at branchless programming. This is a technique to gain speed in our high and low level programming by avoiding branching code as much as possible.

    Reply
  30. Tomi Engdahl says:

    Remote Screen Viewer Is Text-Only
    https://hackaday.com/2022/05/31/remote-screen-viewer-is-text-only/

    Have you been slowly falling down a rabbit hole of Stallman-like paranoia of computers ever since installing Ubuntu for the first time in 2007? Do you now abhor anything with a GUI, including browsers? Do you check your mail with the command line even though you’re behind seven proxies? But, do you still want to play Minecraft? If so, this command-line-only screen viewer might just be the tool to use a GUI without technically using one.

    This remote screen viewer is built in Python by [louis-e] and, once installed, allows the client to view the screen of the server even if the client is a text-only console. [louis-e] demonstrates this from within a Windows command prompt. The script polls the server screen and then displays it in the console using the various colors and textures available. As a result, the resolution and refresh rate are both quite low, but it is still functional enough to play Minecraft and do other GUI-based tasks as long as there’s no fine text to read anywhere.

    https://github.com/louis-e/cli-screenview

    Reply
  31. Tomi Engdahl says:

    https://etn.fi/index.php/13-news/13665-parempaa-koodia-ilman-koodia

    Ohjelmistokehityksessä on monia ongelmia. Ammattitaitoisista kehittäjistä on pulaa, projektit ruuhkautuvat ja myöhästyvät, tietomurtojen määrä kasvaa ja ylipäätään teknistä velkaa on paljon. Jungvidin mukaan vähäkoodiset menetelmät sopivat ratkomaan kaikki näitä ongelmia.

    Tutkimusten mukaan kolme neljästä kehittäjästä odottaa useimpien sovellusten olevan pilvinatiiveja jo tänä vuonna. Jungvidin mukaan tämä avaa paljon mahdollisuuksia low code -pohjaisille ratkaisuille.

    - Vuosien varrella yritykset ovat oppineet, että pilveen siirtyminen myöhästyttää projekteja ja nostaa kustannuksia ilman, että joustavuuden ja kustannustehokkuudet lupaus toteutuu. Vaikeutena on se, että pilvinatiivi ei ole helppoa. Jokaisella pilvipalveluntarjoajalla on paljon erilaisia ​​palveluita, joilla kaikilla on omat API:t ja tuetut ohjelmointikielensä. Ammattitaitoisten pilvisuunnittelijoiden palkkaaminen voi olla erittäin vaikeaa, ja olemassa olevien resurssien uudelleenkoulutus voi tulla kalliiksi ajan myötä.

    Jungvidin mukaan Outsystems yrittää ratkaista tätä ongelmaa uudella alustallaan, jota kutsutaan nimellä Project Neo. – Se on täysin pilvipohjainen low code -pino, jonka avulla voidaan rakentaa täysin pilvipohjaisia ​​natiivisovelluksia ja samalla poistaa kaikki julkisen pilven monimutkaisuudet.

    Reply
  32. Tomi Engdahl says:

    This Is Why Python Data Classes Are Awesome
    https://www.youtube.com/watch?v=CvQ7e6yUtnw

    Data classes in Python are really powerful and not just for representing structured data. In this video I show you what you can do with dataclasses as well as new capabilities that have been added in Python 3.10.

    Reply

Leave a Comment

Your email address will not be published. Required fields are marked *

*

*