Programming Leftovers
-
It's not what programming languages do, it's what they shepherd you to
How many of you have listened, read or taken part in a discussion about programming languages that goes like the following:
Person A: "Programming language X is bad, code written in it is unreadable and horrible."
Person B: "No it's not. You can write good code in X, you just have to be disciplined."
Person A: "It does not work, if you look at existing code it is all awful."
Person B: "No! Wrong! Those are just people doing it badly. You can write readable code just fine."
After this the discussion repeats from the beginning until either one gets fed up and just leaves.
I'm guessing more than 99% of you readers have seen this, often multiple times. The sad part of this is that even though this thing happens all the time, nobody learns anything and the discussion begins anew all the time. Let's see if we can do something about this. A good way to go about it is to try to come up with a name and a description for the underlying issue.
-
Ideas to help working from home
When I came to KDAB to work, working at home was a bit of a culture shock for me – I’d previously only ever worked in an open-plan office and had sworn that home working was not for me – I’d never manage to get anything done! However, I’ve found that home working suits me quite well, and given the current situation I thought I’d write a little about it as some people might be experiencing home working for the first time.
The first concern I had when starting to work from home was the loneliness. This is particularly relevant now, however there are still ways to ensure that you don’t get completely isolated. One thing would be to have meetings via video call – and not to forget that you can also do this with friends in the evening! Having social contact is important, even if you can’t meet up face to face.
The other main concern I had was how to separate working time from non-working time – both the physical and mental aspects. As a physical space, I use my PC desk for gaming which is not ideal, but I make sure after I work I move to another room to differentiate ‘work’ and ‘play’. A better way would be to have two different spaces set up, however with limited space – I live in a flat – I make sure that I at least have a break in between the two uses. Mentally, at the end of each day I like to plan what I’ll do first in the morning, so that it’s part of my wind down for a working day – which allows me to start the next day without getting distracted. At the end of the week I upload my timesheet to say to myself ‘that’s it’ – a very definite point where I’m done for the week.
-
Static analysis in GCC 10
I work at Red Hat on GCC, the GNU Compiler Collection. For the next major release of GCC, GCC 10, I’ve been implementing a new -fanalyzer option: A static analysis pass to identify various problems at compile-time, rather than at runtime.
My thinking here is that it’s best to catch problems as early as possible as the code is written, using the compiler the code is written in as part of the compile-edit-debug cycle, rather than having static analysis as an extra tool “on the side” (perhaps proprietary). Hence, it seems worthwhile to have a static analyzer built into the compiler that can see exactly the same code as the compiler sees—because it is the compiler.
This issue is, of course, a huge problem to tackle. For this release, I’ve focused on the kinds of problems seen in C code—and, in particular double-free bugs—but with a view toward creating a framework that we can expand on in subsequent releases (when we can add more checks and support languages other than C).
-
Malcolm: Static analysis in GCC 10
David Malcolm writes about the static-analysis features that he is working on adding to the GCC compiler.
-
Ashley’s top five projects for Raspberry Pi first-timers
-
How to manage a business without a headquarters
Distributed organisations are as old as the [Internet]. Its first users 50 years ago realised how much can be done by swapping emails and digital files. These exchanges led to the development of “open source” software, jointly written by groups of strangers often geographically distant.
Today most distributed startups have open-source roots. Gatsby is one. Nearly all 1,200 employees of another, Automattic, best known for WordPress, software to build websites, work from home. GitHub, which hosts millions of open-source projects (and was acquired by Microsoft in 2018), may be the world’s biggest distributed enterprise. Two-thirds of its 2,000 staff work remotely. Most firms that build blockchains, a type of distributed database, are by their nature dispersed.
-
10 Most(ly dead) Influential Programming Languages
The other day I read 20 most significant programming languages in history, a “preposterous table I just made up.” He certainly got preposterous right: he lists Go as “most significant” but not ALGOL, Smalltalk, or ML. He also leaves off Pascal because it’s “mostly dead”. Preposterous! That defeats the whole point of what “significant in history” means.
So let’s talk about some “mostly dead” languages and why they matter so much.
Disclaimer: Yeah not all of these are dead and not all of these are forgotten. Like most people have heard of Smalltalk, right? Also there’s probably like a billion mistakes in this, because when you’re doing a survey of 60 years of computing history you’re gonna get some things wrong. Feel free to yell at me if you see anything!
Disclaimer 2: Yeah I know some of these are “first to invent” and others are “first to popularize”. History is complicated!
-
Megvii makes deep learning AI framework open-source as China moves to reduce reliance on US platforms
Initially developed in 2014, MegEngine is part of Megvii’s proprietary AI platform, Brain++
-
Excellent Free Tutorials to Learn Awk
Awk is a versatile programming language designed for pattern scanning and processing language and often used as a data extraction and reporting tool. It’s an excellent filter and report writer. It’s a standard feature of most Unix-like operating systems.
Awk is small, fast, simple, and has a clean comprehensible C-like input language. It has robust programming constructs including if/else, while, do/while and for C-style and array iteration.
The name awk comes from the initials of its designers: Alfred V. Aho, Peter J. Weinberger, and Brian W. Kernighan. The original version of awk was written in 1977 at AT&T Bell Laboratories.
-
This Week in Rust 331
- Login or register to post comments
- Printer-friendly version
- 5254 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 releasedAfter 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 TechThe 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
|
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