Posts

Showing posts from February, 2021

Top 8 Benefits of Functional Programming

Image
The post Top 8 Benefits of Functional Programming first appeared on Qvault . Functional programming is a way to writing code where programs are created strictly through functions. Functional programming has gained quite a bit of traction in recent years among the development community, mostly because of the benefits it provides. Functional programming is a declarative way to write provably correct code. Function definitions are expressions that simply map inputs to outputs, rather than a sequence of statements that update the state of the application. Let’s jump right in to the top 8 reasons you should look into a functional style of coding, or perhaps switching to a completely functional programming language. Functional Programming Benefits Pure functions are better than impure functions Pure functions are easier to test Functional programming leads to fewer bugs Functional code tends to have its state isolated, making it easier to comprehend Function signatures are more tr

Top 8 Tricks to Learn Coding Fast

Image
The post Top 8 Tricks to Learn Coding Fast first appeared on Qvault . The journey to becoming a gainfully-employed software engineer can feel long. The good news is, you can learn smarter not harder. Apply these eight tricks and you’ll be learning to program a lot faster than the average bear. There are no shortcuts. Learn the basics first Don’t watch YouTube videos Learn by doing. Hands-on courses and projects only Googling is a skill. Learn to Google better Once you’ve Googled the same thing three times, write it down Become a member of coding communities Contribute to open-source When you get seriously stuck, sleep on it 1. There are no shortcuts. Learn the basics first There are so many coding boot camps, crash courses, and YouTube videos making huge promises that they can teach you how to code and land you a job in just a few short weeks. This is mostly bullshit. Programming and its sister endeavors computer science and software engineering are complex topics

What Do Computer Scientists Do?

Image
The post What Do Computer Scientists Do? first appeared on Qvault . At work, computer scientists build and deploy programs, algorithms, and systems to solve real-world problems. In most tech jobs, they spend the majority of their time working in teams on new software products. Some computer scientists are more research-oriented however, and may spend time developing new algorithms or pushing the boundaries of what academia knows about certain CS questions. It’s important to understand that most students with a computer science degree become developers or software engineers . Instead of their career being research-focused as you might expect of someone with the “scientist” title, they likely do more implementation (engineering) than theoretical (science) work. This isn’t always that case of course, but it does represent the majority of graduates. A day in the life of a computer scientist/software engineer I can’t speak for every developer or computer scientist, but I usually do so

Why Software Development Doesn’t Need Unions – at Least Not Yet

Image
The post Why Software Development Doesn’t Need Unions – at Least Not Yet first appeared on Qvault . I’ve seen a lot of buzz recently about software developers wanting to form unions. I’m particularly interested in this topic as the founder of Qvault , where my goal is to provide a university-quality CS education at dinner-and-a-movie prices. As I go over some of my thoughts on the matter in this piece, I want to point out I’m trying to keep an open mind about this subject as the experiences I’ve had in the job market don’t reflect the experiences of the average developer. Feel free to reach out on Twitter to share your thoughts with me. The Problems #1 Salaries aren’t keeping up with inflation and cost of living One of the articles I’m responding to, Steve Belovarich’s Should We Form a Labor Union makes the claim: The economy in 50s America enabled a sole breadwinner in the family to provide enough to pay the bills, put food on the table, and even take the family on a vacatio

View Git Tags with Semver Ordering

Image
The post View Git Tags with Semver Ordering first appeared on Qvault . If you’re like me, you wish all Git tags adhered to the Semantic Versioning standard . Unfortunately, Semver is just a convention, so Git tags can basically be any string of text. By default when you use the git tag command, your output will be in alphabetical order. Being a gopher, almost all the projects I work on are tagged according to Semver standards, which means the default output is fairly useless. In order to print all the Git tags in a project in Semver order, simply run git tag -l | sort -V . Alternatively, if you’re on at least version 2 of Git, you won’t even need to use the sort command, just run: git tag -l --sort=version:refname If you want the latest tags at the top of the output, use -version to inverse the sort: git tag -l --sort=-version:refname If you want your global installation of Git to default to Semver sorting, you can use the following command as of Git v2.1+: git config --

7 Critical Reasons Beginners Should Learn Go in 2021

Image
The post 7 Critical Reasons Beginners Should Learn Go in 2021 first appeared on Qvault . Why learn Golang, and especially why learn Golang as a beginner coder? There are many good reasons why learning Golang is a popular idea altogether – StackOverflow’s 2020 Developer survey saw it climb in popularity among developers from 10th in 2019 all the way to 5th in 2020. A full 32% of developers surveyed in Insights Dice want to learn it. It pays well – globally, the StackOverflow survey found that Perl, Scala, and Go programmers have the highest salaries.  It’s practical, too, as it was developed specifically by Google to “eliminate the slowness and clumsiness of software development at Google, and thereby to make the process more productive and scalable. The language was designed by and for people who write—and read and debug and maintain—large software systems.” For those who want to learn computer science online , it’s also worth mentioning that Go is a good basic language that