Debunking the Myths of RPC & REST

Standard

The internet is chock-full of articles, blog posts, and discussions about RPC and REST. Most are targeted at answering a question about using RPC or REST for a particular application, which in itself is a false dichotomy. The answers that are provided generally leave something to be desired and give me the impression that there are a slew of developers plugging RESTful architectures because they’re told that REST is cool, but without understanding why. Ironically, Roy Fielding took issue with this type of “design by fad” in the dissertation in which he introduced and defined REST:

“Consider how often we see software projects begin with adoption of the latest fad in architectural design, and only later discover whether or not the system requirements call for such an architecture.” Continue reading

Web Developer Roadmap

Standard

Below you find a set of charts demonstrating the paths that you can take and the technologies that you would want to adopt in order to become a frontend, backend or a devops. I made these charts for an old professor of mine who wanted something to share with his college students to give them a perspective.

If you think that these can be improved in anyway, please do suggest.

Continue reading

Your Company’s Culture Is Who You Hire, Fire & Promote (part 2)

Photo Credit: HarperBusiness, “Snakes in Suits”
Standard

Part 2, Anatomy of an Asshole

In Part 1, The Performance-Values Matrix, I argued that the biggest reason company cultures degrade is they hire, retain, and promote “assholes” (mercenary employees whose lack of empathy causes interpersonal issues). I also introduced the Performance-Values Matrix as a reinforcement system address this problem. Let’s now dive deeper into clinical understanding of this behavior and how it can be carefully managed in a corporation. Continue reading

Your Company’s Culture is Who You Hire, Fire, & Promote

Standard

“The actual company values, as opposed to the nice-sounding values, are shown by who gets rewarded, promoted, or let go.”
– Netflix Culture: Freedom & Responsibility

Every time I walk into a new company I am advising, I invariably encounter a set of noble values that are prominently displayed on the walls. So the first thing I do is look past them by carefully observing how people really behave, which tells me what I actually need to know.

It’s not that most companies are disingenuous about the values they espouse. One of Enron’s “aspirational values” was integrity, which may have genuinely expressed who they wanted to be at the beginning. But over time, this did not reflect their “practiced values” of who they actually became when they committed fraud.

Continue reading

The Most Important Skill You Should Master

Standard

A man who dares to waste one hour of time has not discovered the value of life.” – Charles Darwin

Pff, another article on productivity.

Yeah I know, I had the same reaction when I was writing this. But, bear with me, since we are in this together.

Over the last seven years, I’ve researched, studied and experimented, on myself and the people closest to me (they volunteered, most of the time), everything I could find on the topic of time.

The one thing I’ve realised is that the TIME MANAGEMENT industry got it wrong.
They have taken what is a most important skill we can master, and turned it into the equivalent of a TO-DO list.

How disappointing. Continue reading

Ultimate How-To Guide for Learning Any Skill

Standard
I tried to learn how to code and failed. Twice.

It’s a funny story actually.

Several years back, I decided to learn how to code with the idea that in order to become an entrepreneur, coding will come useful, especially in the beginning when you don’t have enough capital to hire developers.

So my journey of becoming a coder began. At first, I paid a subscription on a monthly basis. The first couple of months it went great, but then my motivation completely drained and I stopped.

For an entire year, I had this guilt trip that I just need to learn it, otherwise, my entrepreneurship career is dead. A silly belief I know.

Fast forward a year, I started again. This time, I was prepared.

I got a coach and an instructor. One would think you cannot fail like this.

Two weeks in, I bailed coding. And I bailed it for good.

I don’t hold a grudge towards coding, but I decided to divert my focus on other things.

As an educator by profession, I was both pissed off and stoked that this could happen. Continue reading

The Perfect Server – Ubuntu 16.04 (Xenial Xerus) with Apache, PHP, MySQL, PureFTPD, BIND, Postfix, Dovecot and ISPConfig 3.1

Standard

Source: https://www.howtoforge.com/tutorial/perfect-server-ubuntu-16.04-with-apache-php-myqsl-pureftpd-bind-postfix-doveot-and-ispconfig/

This tutorial shows the installation of an Ubuntu 16.04 (Xenial Xerus) web hosting server with Apache2, Postfix, Dovecot, Bind and PureFTPD to prepare it for the installation of ISPConfig 3.1. The resulting system will provide a Web, Mail, Mailinglist, DNS and FTP Server.

ISPConfig 3 is a web hosting control panel that allows you to configure the following services through a web browser: Apache or nginx web server, Postfix mail server, Courier or Dovecot IMAP/POP3 server, MySQL, BIND or MyDNS nameserver, PureFTPd, SpamAssassin, ClamAV, and many more. This setup covers the installation of Apache (instead of Nginx), BIND (instead of MyDNS), and Dovecot (instead of Courier).

Notice: The ISPConfig 3.1 version that is used in this tutorial is currently in beta state. The ISPConfig old stable 3.0.5p9 version can not be used on Ubuntu 16.04 as it is not compatible with PHP 7. Continue reading

Install Owncloud Client on Ubuntu (recommended way)

Standard