Software disenchantment

As a general trend, we’re not getting faster software with more features. We’re getting faster hardware that runs slower software with the same features.

Source: Software disenchantment @

16Gb Android phone was perfectly fine 3 years ago. Today with Android 8.1 it’s barely usable because each app has become at least twice as big for no apparent reason. There are no additional functions. They are not faster or more optimized. They don’t look different. They just…grow?

9 Best Twitter Clients for Linux That You Will Love to Use

Therefore, in this post, we shall present you some of the best Twitter desktop applications that you can install in Linux, however, the list is not in any particular order but has a selection of applications that offer exciting features and functions for effective and reliable blogging service management.

Source: 9 Best Twitter Clients for Linux That You Will Love to Use

I Want to Write Android Apps. Where Do I Start?

Dear Lifehacker, I have some background in coding, but I’ve never touched Android development before. I’d like to get started, but I’m not entirely sure what I need. I don’t need to “learn to code” per se, but I could use some guidance on where to start with Android. Can you help?

Source: I Want to Write Android Apps. Where Do I Start?

What is a lambda expression in C++11?

C++ includes useful generic functions like std::for_each and std::transform, which can be very handy. Unfortunately they can also be quite cumbersome to use, particularly if the functor you would like to apply is unique to the particular function.

Source: What is a lambda expression in C++11?

C++11 introduces lambdas allow you to write an inline, anonymous functor to replace the struct f. For small simple examples this can be cleaner to read (it keeps everything in one place) and potentially simpler to maintain,

Scaling Financial Reporting at Airbnb

Going from declarative programming to functional programming has been a powerful paradigm shift for us to think about financial processing and accounting. We can now think of this system as a straightforward actor/handler system rather than getting mired in complicated SQL-join logic.

Source: Tracking the Money — Scaling Financial Reporting at Airbnb – Airbnb Engineering & Data Science – Medium

NASA grants free access to its technologies in latest software release

This third edition of the publication has contributions from all the agency’s centres on data processing/storage, business systems, operations, propulsion and aeronautics. It includes many of the tools NASA uses to explore space and broaden our understanding of the universe. Each catalogue entry is accompanied with a plain language description of what it does.

Source: NASA grants free access to its technologies in latest software release

Is Logical Data Modeling Dead?

The key to getting people to at least appreciate logical data models is to just do them as part of whatever modeling effort you are working on. Don’t say “stop”. Just model on. Demonstrate, don’t tell your teams where the business requirements are written down, where they live. Then demonstrate how that leads to beautiful physical models as well.

Source: Is Logical Data Modeling Dead? | InfoAdvisors Blog

Think Before You Parallelize

The loop abstractions examined here are just one type of parallel or concurrent programming abstraction available. There is a whole universe out there, Actor Models, Async/Await, Tasks, Thread Pools, and so on. Be sure to understand what you are using, and measure whether it will really be useful, or whether you should focus on fast single threaded algorithms or look for third party tools with better performance.

Source: Think Before You Parallelize

The Ken Thompson Hack

Ken describes how he injected a virus into a compiler. Not only did his compiler know it was compiling the login function and inject a backdoor, but it also knew when it was compiling itself and injected the backdoor generator into the compiler it was creating. The source code for the compiler thereafter contains no evidence of either virus.

Ken wrote, In demonstrating the possibility of this kind of attack, I picked on the C compiler. I could have picked on any program-handling program such as an assembler, a loader, or even hardware microcode. As the level of program gets lower, these bugs will be harder and harder to detect. A well installed microcode bug will be almost impossible to detect.

Source: The Ken Thompson Hack