<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Aladin Ben Sassi</title>
    <description>The latest articles on Forem by Aladin Ben Sassi (@bensassialadin).</description>
    <link>https://forem.com/bensassialadin</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F175269%2Fa4a54963-6bca-420c-8869-fc40df6aaa0c.jpg</url>
      <title>Forem: Aladin Ben Sassi</title>
      <link>https://forem.com/bensassialadin</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/bensassialadin"/>
    <language>en</language>
    <item>
      <title>Top five tips for a better freelancing career</title>
      <dc:creator>Aladin Ben Sassi</dc:creator>
      <pubDate>Thu, 16 Jan 2020 08:37:20 +0000</pubDate>
      <link>https://forem.com/bensassialadin/top-five-tips-for-a-better-freelancing-career-392o</link>
      <guid>https://forem.com/bensassialadin/top-five-tips-for-a-better-freelancing-career-392o</guid>
      <description>&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F5760%2F1%2AaE2aubxKwrWRwDwqowlD3Q.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fmiro.medium.com%2Fmax%2F5760%2F1%2AaE2aubxKwrWRwDwqowlD3Q.jpeg"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A new decade is upon us, and with it comes the stress of not knowing whether this one will be better than the last and whether our careers will see new heights.&lt;br&gt;
I don’t know about you, but I like having a roof over my head, money for food, and some left to treat myself, and as such, I try to always reach new heights in my work, because if we’re not moving forward, then we’re sinking, and I don’t know how to swim.&lt;br&gt;
Every single human out there, wants to have a much better year than the one before, but the only question is, are you willing to put in the work? Are you willing to sacrifice the time you spend sleeping in and touching yourself, with work that can improve your life, and the lives of those you love?&lt;/p&gt;

&lt;h3&gt;
  
  
  Be patient
&lt;/h3&gt;

&lt;p&gt;In a world governed by speed, and everyone around you running toward something, being patient, seems like a virtue only good parents and chivalrous knights have.&lt;br&gt;
Who wants to wait around while a client is trying to explain their ideas and second-guessing their every choice? I’ll tell you who, people who want to have long term clients, not a one-time payment.&lt;br&gt;
Most clients are putting in their life savings into their ideas and startups, so having them doubt themselves and doubt you at times, is more than understandable, a good freelancer will know that they need to work with their clients to get over those doubts, and to be patient with them as they navigate the ruthless and wildlands called entrepreneurship.&lt;br&gt;
Be patient, respect them and they will respect you in return, and would never consider finding someone else for their future work, but lose your patience and they’re gone forever.&lt;/p&gt;

&lt;h3&gt;
  
  
  Go the extra mile
&lt;/h3&gt;

&lt;p&gt;Most consultants or freelancers out there, get a list of needed tasks, accomplish everything on that list, send in an invoice, and get paid.&lt;br&gt;
To make myself clear, there is nothing wrong with that, after all, you’re being paid to develop what’s on that list, and chances are if you go out of your way to fix or add something, you will not be paid for it. However, once in a while if you see something else that needs fixing, and you have the time to take care of it, your client will remember and appreciate that, and they will be your biggest marketers.&lt;br&gt;
You have no idea how many contracts I got thanks to clients I took 30 minutes out of my day to help, after all, a good developer will give you what you want, whereas a great developer will give you what you need.&lt;br&gt;
Think about it, how many freelancers in your field are out there? Millions? Probably more, but how many of them do you think are going out of their way to help? Not many I assure you. So if for nothing else than to stand out from the crowd, and secure a client that will keep on bringing you work, you should do it.&lt;/p&gt;

&lt;h3&gt;
  
  
  Organize your day
&lt;/h3&gt;

&lt;p&gt;The biggest problem with being a freelancer or consultant, is that you lose the structure an office job would have provided, and as such, you will start to sleep in more and more, drink out longer and longer, and within a few years time, you’ll be working the bare minimum to support yourself and family because you just can’t be bothered to put in any more effort.&lt;br&gt;
Creating a structure for your life, where you know when you will work, rest, eat and indulge in your hobbies, will make all the difference in the long run.&lt;br&gt;
Start with something as simple as scheduling when you’ll work and for how long when to have meetings with clients, and when will you look for work or send proposals. It might not seem like much, but it’s what will drive you to do your work more efficiently since you know that in a few hours or so, you’re going to be able to walk away from your computer, and do wherever the fuck you want.&lt;br&gt;
One more thing, if you’re thinking that you went into freelancing for freedom and not having anyone tell you what to do, then think again numb-nuts, structure is what will keep you in business.&lt;/p&gt;

&lt;h3&gt;
  
  
  Learn how to set your goals
&lt;/h3&gt;

&lt;p&gt;Most people when asked to set goals, think of the most outlandish things, because in their mind if you don’t aim for the moon, you’ll never reach the stars or some made-up shit like that.&lt;br&gt;
The problem with aiming for the moon is that you’ll break your neck staring at it from all the way down here without ever finding the ladder or first step that will get you there.&lt;br&gt;
Instead of wanting to make a million bucks a year, how about setting a goal to increase your earnings by 10% every month. Now that’s a more realistic and achievable goal, that will get you to that million dollars eventually.&lt;br&gt;
A trip of a thousand steps starts with one, so don’t try to rush things and run your ass off for the first half, then struggle to finish the rest, this is not a race, it’s a marathon, you’re in it for the long haul, and for those people who wants to get rich fast, it ain’t happening, there is nothing that’s free or easy about money, simply because easy come easy go.&lt;br&gt;
So one step at a time, and you’ll get everything you’ve ever desired.&lt;/p&gt;

&lt;h3&gt;
  
  
  Improve your online presence
&lt;/h3&gt;

&lt;p&gt;I can’t stress this one enough! Why would a client trust you with their money, if they know nothing about you after a quick google search? For all they know, you could be a conman, a scammer, or even a Nigerian prince.&lt;br&gt;
Always work on making yourself known, on shaping an image that inspires trust, because only then will you start getting the good contracts, not just scraps to get by with, after all, in our day and age, image is everything, and yours need to be cleaner than a cowardly knight’s armor.&lt;/p&gt;

&lt;p&gt;Every year is a chance for us to become a better version of ourselves, and although we might never reach the perfect image we have in our minds, we can still get damn near to it.&lt;/p&gt;

</description>
      <category>watercooler</category>
    </item>
    <item>
      <title>Five guilty pleasures only developers know</title>
      <dc:creator>Aladin Ben Sassi</dc:creator>
      <pubDate>Sun, 13 Oct 2019 19:12:37 +0000</pubDate>
      <link>https://forem.com/bensassialadin/five-guilty-pleasures-only-developers-know-2nb6</link>
      <guid>https://forem.com/bensassialadin/five-guilty-pleasures-only-developers-know-2nb6</guid>
      <description>&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--zNj5tkJw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/5090/1%2A14QUyfpbMJdeNVGNrfhezA.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--zNj5tkJw--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/5090/1%2A14QUyfpbMJdeNVGNrfhezA.jpeg" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As developers, our jobs are very stressful, jumping from deadline to deadline, solving difficult problems on a daily basis, and handling clients or project managers' impossible expectations at times.&lt;br&gt;
Yet in the midst of all this chaos, we do find time to indulge in a few guilty pleasures, no one else knows about. And I’m here to spill the beans.&lt;/p&gt;

&lt;h3&gt;
  
  
  Refactoring
&lt;/h3&gt;

&lt;p&gt;Refactoring is the name of the game baby. Nothing feels better than spending a few hours refactoring everything to make it easier. It doesn’t matter if the code has already been approved, doesn’t even matter that we have more important things to do, sometimes you just gotta take a few hours to move and rename thirty classes because you fucking want to.&lt;/p&gt;

&lt;h3&gt;
  
  
  Mindless work
&lt;/h3&gt;

&lt;p&gt;We all know how mind consuming our work is, it takes a lot of mental energy, and focus to accomplish any task. And that’s exactly why nothing beats mindless work.&lt;br&gt;
At times I’d copy a big module into a new file, delete every line and comment I don’t need, and just mindlessly read it to understand what in the hell it’s all about.&lt;br&gt;
A task I could have accomplished without all the extra work and steps, by just focusing on the code and figuring it out, but hey, when it’s three in the morning, and you’re too drunk to be bothered, you gotta do, what you gotta do.&lt;/p&gt;

&lt;h3&gt;
  
  
  Maslow’s Golden Hammer
&lt;/h3&gt;

&lt;p&gt;“I suppose it is tempting, if the only tool you have is a hammer, to treat everything as if it were a nail.”&lt;br&gt;
Developers are creatures of habit, and they tend to use the same known tools to do every project without paying any mind to the constraints. Which in itself is not a very good thing, because if you know that X solves this problem, you shouldn’t use Y just because you’re more familiar with it. But hey, that’s why this article is titled Guilty pleasures, not Best practices.&lt;/p&gt;

&lt;h3&gt;
  
  
  Playing favorites
&lt;/h3&gt;

&lt;p&gt;Nothing turns a developer on, more than a good debate. Whether it's Android vs iOS, C++ vs Java, Angular vs React, etc, just give us something to sink our teeth in.&lt;br&gt;
We all seem to have a language or a framework we prefer more than the other, and would spend a good amount of time defending, even at the cost of our precious time, because there’s nothing more satisfying than proving the other party wrong, and looking them dead in the eyes as they sweat and squirm because they know they’ve been had.&lt;br&gt;
&lt;em&gt;Also React is better, fight me.&lt;/em&gt;&lt;/p&gt;

&lt;h3&gt;
  
  
  Rebellious coding
&lt;/h3&gt;

&lt;p&gt;We’re all rebels in a certain way, we chose to code because it gave us freedom, heck, I wrote my best lines of code high, drunk, and listening to Led Zeppelin.&lt;br&gt;
To be fair, I suppose that most of us appreciate and see the value behind coding standards and conventions, but I’d bet you anything, that each of us has a long list of times they disregarded the standards, to build something the correct way, at least our version of the &lt;em&gt;correct way.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;At the end of the day, we’re all humans, we have our guidelines, but we like to mix it up from time to time, and even if our process is not perfect, imperfections make us who we are. So go seize the day, and cheers to all the rebels out there.&lt;br&gt;
&lt;a href="//www.aladinbs.com"&gt;My website&lt;/a&gt;| &lt;a href="https://twitter.com/BenSassiAladin"&gt;Twitter&lt;/a&gt; | &lt;a href="https://medium.com/@BenSassiAladin"&gt;Medium&lt;/a&gt;| &lt;a href="https://www.quora.com/profile/Aladin-Bensassi"&gt;Quora&lt;/a&gt;&lt;/p&gt;

</description>
      <category>watercooler</category>
    </item>
    <item>
      <title>Yes, you can still become a web developer!</title>
      <dc:creator>Aladin Ben Sassi</dc:creator>
      <pubDate>Tue, 01 Oct 2019 16:36:37 +0000</pubDate>
      <link>https://forem.com/bensassialadin/yes-you-can-still-become-a-web-developer-pjm</link>
      <guid>https://forem.com/bensassialadin/yes-you-can-still-become-a-web-developer-pjm</guid>
      <description>&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--aVrQIH72--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/4373/1%2ASY_xDYYTYCCo-IAD-GuuvA.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--aVrQIH72--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://miro.medium.com/max/4373/1%2ASY_xDYYTYCCo-IAD-GuuvA.jpeg" alt=""&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;The best time to plant a tree is twenty years ago. The second best time is now.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;For the life of me, I can’t remember where I read or heard those words, but ever since then, they became a part of my life. I didn’t even want to write this article today, I thought I’d do it tomorrow, but then those words rang in my head, and here I am now, typing away in front of my screen.&lt;br&gt;
But aside from helping me battle my procrastination, those words have another meaning, another use if you will, they give me another clearer view of life, where I can clearly see that it’s never too late to do or become anything, that if I plant the seed today, twenty years from now, I’ll have a big tree to rest under.&lt;/p&gt;

&lt;p&gt;Many people want to learn how to code, either as a hobby, a way to make some extra money or to even change their career completely, but as all humans do, most of these people shackle themselves with excuses, to mask their fear of failure.&lt;br&gt;
I mean who wants to try and fail in life? We’d all rather keep our perfect image of ourselves, the perfect reflexion we see when we close our eyes, the one we look at, clean and put away making sure we don’t scratch, but in my few years on this earth, I’ve learned one essential truth, it’s better to try and fail, than to never try at all.&lt;/p&gt;

&lt;p&gt;So the next time you try to tell yourself that you’re too old, too young, too busy, too dumb, or too screwed by life, just cut the shit, walk your ass to the mirror, look into your eyes and know that the only person you’re letting down is yourself, that your life can be very very different in a few years, if you just take that first step.&lt;/p&gt;

&lt;p&gt;I’ll break down some of the excuses I hear the most, and try to show you why you can still become a developer despite whatever imaginary monster you have standing in your way.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Too old&lt;/strong&gt;&lt;br&gt;
This is a classic, pun intended. Some of our more senior citizens believe that their years of learning and accomplishments are far behind them. You can’t teach an old dog new tricks, as they’d like to say. But if you haven't noticed, you’re not a dog, if you were, you’d be licking your balls and chasing your tail right now.&lt;/p&gt;

&lt;p&gt;You might be old, but there’s nothing preventing you from rising from the ashes, from spreading your wings and telling old age to go fuck itself.&lt;br&gt;
The development community will embrace you, you’ll learn things you’ve never thought you’d be able to understand, and what’s more, you’ll regain your curiosity, and if that’s not youth, then I don’t know what is.&lt;br&gt;
You’re still mentally capable of learning, heck, it’ll even help you maintain your health and morality.&lt;/p&gt;

&lt;p&gt;As far as work goes, if you reach a certain level, no one will give a shit how old you’re, when it comes to development, the only thing that matter is what you can do.&lt;/p&gt;

&lt;p&gt;So rise Pheonix, rise, and show the world you still got it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Too busy&lt;/strong&gt;&lt;br&gt;
I mean who isn’t busy, even the homeless have a certain air of being busy these days.&lt;/p&gt;

&lt;p&gt;But, would it be so impossible for a normal person to free a couple of hours from their day? Well, what if I told you that if you sacrificed two hours of your day for a couple of years, to follow your dream, your life will change! Not so impossible now, right?&lt;/p&gt;

&lt;p&gt;I have seen people chase their dream and lose, and I have seen people settle and “win”, and I can tell you with confidence that those who gave themselves to their dreams are the true winners, and that nothing in life can extinguish the fire in their eyes, not failure, not bankruptcy, and not even death, dreamers live forever and light our night sky.&lt;/p&gt;

&lt;p&gt;Dare to dream, dare to sacrifice a few hours of doing nothing to accomplish what you always wanted, dare to be great.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;I have a record, and no one would hire me&lt;/strong&gt;&lt;br&gt;
Who amongst us is perfect? I’m certainly not, heck, I’m further away from perfection than some people behind bars.&lt;/p&gt;

&lt;p&gt;You made a mistake, you did your time, you paid your debt, and now you want to make a new life for yourself, is that right? Well, what’s stopping you? Afraid of what people might think of you? Don’t feel that you deserve a second chance in life? Scared of failure? Fuck you! Wake up, you not only owe it to your family and friends, but you also owe it to the young you, to get your shit together, none of us grow up dreaming to become ex-cons with nothing to show, so plant the seed now, and watch it grow.&lt;/p&gt;

&lt;p&gt;The tech industry is filled with forgiving and open-minded people, that would stop at nothing to see you succeed in life, as long as you’ve shown that you really want it.&lt;/p&gt;

&lt;p&gt;You might not be behind bars anymore, but your mind still is, break those bars, Shawshank your way to freedom through miles of shit, because we both know that in the end, it’ll be worth it.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;br&gt;
Don’t fear failure, don’t give in to your limitations, use them, wear them as armor, fuck anyone who doesn't believe in you, including you.&lt;/p&gt;

&lt;p&gt;I really hope you enjoyed this list, and if you did, please share it with your friends, it’ll mean the world to me as a writer.&lt;br&gt;
&lt;a href="//www.aladinbs.com"&gt;My website&lt;/a&gt;| &lt;a href="https://twitter.com/BenSassiAladin"&gt;Twitter&lt;/a&gt; | &lt;a href="https://medium.com/@BenSassiAladin"&gt;Medium&lt;/a&gt;| &lt;a href="https://www.quora.com/profile/Aladin-Bensassi"&gt;Quora&lt;/a&gt;&lt;/p&gt;

</description>
      <category>watercooler</category>
    </item>
    <item>
      <title>The ten commandments for software developers.</title>
      <dc:creator>Aladin Ben Sassi</dc:creator>
      <pubDate>Sun, 14 Jul 2019 07:32:58 +0000</pubDate>
      <link>https://forem.com/bensassialadin/the-ten-commandments-for-software-developers-4j1m</link>
      <guid>https://forem.com/bensassialadin/the-ten-commandments-for-software-developers-4j1m</guid>
      <description>&lt;p&gt;There are a few rules that every developer should respect, and never break. Doctors, lawyers, and judges have their oaths, but as developers, who have no such thing, we should at least have a code of ethics that bind us.&lt;br&gt;
So I decided to take the initiative, and write, what in my opinion should be the ten commandments, for software developers:&lt;/p&gt;

&lt;p&gt;• &lt;strong&gt;Thou shalt not lie:&lt;/strong&gt; Whether you’re over-promising, faking knowledge in a technology you have no idea about, or straight out lying about your ability to accomplish a task, lying will not only hurt your client, but it will also hurt your reputation. And I don’t know about you, but I value my reputation over a one-time payment.&lt;/p&gt;

&lt;p&gt;• &lt;strong&gt;Thou shalt not steal:&lt;/strong&gt; Stealing doesn’t only come in the form of stealing money, but it can be anything from keeping backdoors on projects you coded without the knowledge of your client, to poaching clients from your agency or colleagues.&lt;/p&gt;

&lt;p&gt;• &lt;strong&gt;Thou shalt not be indifferent:&lt;/strong&gt; Indifference is a curse that destroys a person’s ability to create, and in consequence, work will slow down and the output will be mediocre at best.&lt;/p&gt;

&lt;p&gt;• &lt;strong&gt;Thou shalt not knowingly hurt a client:&lt;/strong&gt; Clients are people who count on us to bring our A-game every day and trust us to have their best interest in mind. Therefore, we should strive to earn that trust and grow it into mutual respect.&lt;/p&gt;

&lt;p&gt;• &lt;strong&gt;Thou shalt not hurt a colleague:&lt;/strong&gt; Colleagues are also people who we should not harm knowingly for any reason. As developers, we built a community that’s helpful and welcoming, just like a big family. And a family &lt;em&gt;takes care of its own.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;• &lt;strong&gt;Honor thy mentor and tutor:&lt;/strong&gt; People who taught us our craft, are people we should forever be grateful to. They not only took time from their day to offer us everything they learned in bite-sized pieces of information so that our young brains can digest them, but they also saw something in us that they decided was worth the time they invested.&lt;/p&gt;

&lt;p&gt;• &lt;strong&gt;Thou shalt not overcharge:&lt;/strong&gt; Developers like in any other career, have the good and the bad, and sometimes these bad developers, would overcharge clients, just because they don’t know any better, and that’s worse than stealing, it’s taking advantage of someone who lacks the knowledge and making a fool out of them. Imagine if a doctor overcharged your grandmother, how would that make you feel?&lt;/p&gt;

&lt;p&gt;• &lt;strong&gt;Thou shalt strike a balance:&lt;/strong&gt; We all know how important work can become for us, but we all need to take time for ourselves and get away from the stress of every day. A work/life balance is something we should all work toward.&lt;/p&gt;

&lt;p&gt;• &lt;strong&gt;Thou shalt not deliver unfinished work:&lt;/strong&gt; As developers, we know when a product we built is barely functional, and although it seems good enough from outside, inside is a different story. Never deliver that sort of project, until you make sure it’s perfect in your eyes.&lt;/p&gt;

&lt;p&gt;• &lt;strong&gt;Thou shall spread knowledge:&lt;/strong&gt; Spread knowledge everywhere and every way you can, open your mind, your source code, and your arms to every young developer, and colleague in need.&lt;/p&gt;

&lt;p&gt;That’s it for the ten commandments, now go forth and conquer my children.&lt;/p&gt;

&lt;p&gt;I really hope you enjoyed this list, and if you did, please share it with your friends, it’ll mean the world to me as a writer.&lt;br&gt;
&lt;a href="//www.aladinbs.com"&gt;My website&lt;/a&gt;| &lt;a href="https://twitter.com/BenSassiAladin"&gt;Twitter&lt;/a&gt; | &lt;a href="https://medium.com/@BenSassiAladin"&gt;Medium&lt;/a&gt;| &lt;a href="https://www.quora.com/profile/Aladin-Bensassi"&gt;Quora&lt;/a&gt;&lt;/p&gt;

</description>
      <category>watercooler</category>
    </item>
    <item>
      <title>What offends me the most, as a web developer</title>
      <dc:creator>Aladin Ben Sassi</dc:creator>
      <pubDate>Sat, 13 Jul 2019 06:49:10 +0000</pubDate>
      <link>https://forem.com/bensassialadin/what-offends-me-the-most-as-a-web-developer-169g</link>
      <guid>https://forem.com/bensassialadin/what-offends-me-the-most-as-a-web-developer-169g</guid>
      <description>&lt;p&gt;I’ve been in the web development industry long enough, to become a bitter old man, who screams at kids in his neighborhood to get off his lawn.&lt;br&gt;
So I decided to write a small list of things that push me to despair, every time I encounter them.&lt;/p&gt;

&lt;p&gt;• Clients who contact me to build a website, and then back away in horror when I tell them about my rates, just because they thought I’d charge them around the same price as a Wordpress template. Really buddy? Really?&lt;/p&gt;

&lt;p&gt;• Other web developers who think they’re holier-than-thou, just because they write code for a living. These are the same kind of people who go around telling everyone their IQ, and how smart they are just because they’re “developers”.&lt;br&gt;
Junior developers that refuse to take advice from people with more knowledge and experience than them, because their hard throbbing ego keeps them from learning anything new.&lt;/p&gt;

&lt;p&gt;• The pseudo-entrepreneurs that want you to build their app for free, in exchange for stock. These people actually want to reward you for your hard work, with stocks that are worth nothing, unless you build a product and give them value. I still can’t believe these individuals will contribute to humanity’s DNA pool.&lt;/p&gt;

&lt;p&gt;• Developers who debate everything, literally everything. From spaces vs tabs to Linux vs Mac OS, and everything else in between. Holy fuck these people are annoying.&lt;/p&gt;

&lt;p&gt;• Mouth breathers who call themselves designers, and proceed to buy and install themes when hired for a job. Don’t get me wrong, there’s nothing wrong with buying themes, but if you’re selling weed, you don’t get to call yourself a pharmacist.&lt;/p&gt;

&lt;p&gt;I know, I’m fun at parties.&lt;/p&gt;

&lt;p&gt;That’s it for this list, I really hope you enjoyed it, and if you did, please share it with your friends, it’ll mean the world to me as a writer.&lt;br&gt;
&lt;a href="//www.aladinbs.com"&gt;My website&lt;/a&gt;| &lt;a href="https://twitter.com/BenSassiAladin"&gt;Twitter&lt;/a&gt; | &lt;a href="https://medium.com/@BenSassiAladin"&gt;Medium&lt;/a&gt;| &lt;a href="https://www.quora.com/profile/Aladin-Bensassi"&gt;Quora&lt;/a&gt;&lt;/p&gt;

</description>
      <category>watercooler</category>
      <category>humor</category>
    </item>
    <item>
      <title>Twenty-one tips to propel your career to the next level!</title>
      <dc:creator>Aladin Ben Sassi</dc:creator>
      <pubDate>Thu, 11 Jul 2019 16:13:20 +0000</pubDate>
      <link>https://forem.com/bensassialadin/twenty-one-tips-to-propel-your-career-to-the-next-level-188g</link>
      <guid>https://forem.com/bensassialadin/twenty-one-tips-to-propel-your-career-to-the-next-level-188g</guid>
      <description>&lt;p&gt;&lt;strong&gt;#1. Work hard&lt;/strong&gt;&lt;br&gt;
I had to start with the most obvious one. Your career will never progress unless you truly give it your all, blood and sweat. Don’t half-ass two tasks when you can whole-ass one, and definitely never settle for less than perfect.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#2. Be respectful&lt;/strong&gt;&lt;br&gt;
Always be the kind of person, you’d want to work and deal with. I know that we’re all humans and sometimes we have bad days that affect our mood, but a professional will never let it show, not to his colleagues, and definitely not to his clients.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#3. Set goals&lt;/strong&gt;&lt;br&gt;
Two rockets are launched into space, one has a specific target to go to, and the other has no destination. They’re both going up, but which of them in your opinion will go further? It’s the same thing with our careers, we need to have certain goals and milestones to work toward, and fly to.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#4. Be pragmatic&lt;/strong&gt;&lt;br&gt;
Being realistic and making decisions based on reason rather than emotions, is a recipe for success, as long as you don’t overdo it, of course, I don’t want to catch you working when you should be spending time with a friend in need. At the end of the day, most, if not all of us, only want to further our careers, to take care of our loved ones, so make sure you don’t gain something by losing everything.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#5. Never stop learning&lt;/strong&gt;&lt;br&gt;
The second we stop moving forward is the second we start falling backward. I can’t stress how important it is to stay relevant and up to date on your field. After all, we’d all hate to go to a doctor because of a sore throat, and having them prescribe heroin for us.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#6. Take some time for yourself&lt;/strong&gt;&lt;br&gt;
After all, all work and no play makes Jack a dull boy. We should keep in mind that rest in itself, is an important part of work, it helps us reset, take a breather, and get back at it, ready for a day in the trenches.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#7. Take care of your body&lt;/strong&gt;&lt;br&gt;
It’s a known fact, that we’re not as productive as we can be if we don’t eat well and have a good night of sleep every day. A healthy breakfast, an hour of workout, and eight hours of sleep daily will change your life and your energy significantly.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#8. Be a mentor&lt;/strong&gt;&lt;br&gt;
Be the kind of person that people can learn from, and gravitate towards. There’s joy in giving, especially if you’re willingly giving your time, experience and knowledge.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#9. Emerge yourself in the community&lt;/strong&gt;&lt;br&gt;
There are so many communities out there for every line of work, and all of them are full of amazing and talented people, that have so much to offer, and so many tips that can drive your career lightyears ahead.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#10. Find your niche&lt;/strong&gt;&lt;br&gt;
Don’t be a jackass of all trades, master of none. Find your niche and work at it, become the go-to person when it comes to it, and most importantly, you’ll become an expert, which will help you immensely in your work.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#11. Track your progress&lt;/strong&gt;&lt;br&gt;
It’s very important for you to be able to look back and see all the progress you made. It’ll be the dose of motivation you need to keep pushing forward.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#12. Own up to your mistakes&lt;/strong&gt;&lt;br&gt;
it takes a big person to admit they are wrong, so whenever you screw up, there’s nothing wrong with owning up to it. You’ll gain the respect and trust of people around you.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#13. Give credit when credit is due&lt;/strong&gt;&lt;br&gt;
There’s nothing worse than a manager or a colleague who takes all the praise and glory for something you helped them do. So if you’re ever in a similar position and someone gives you a hand with whatever you’re working on, give them the credit they deserve, you’ll not only make their day, but you’ll also make an ally that you can count on.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#14. Have a passion project&lt;/strong&gt;&lt;br&gt;
Having a passion project can push you to learn so many new things that are out of your wheelhouse, like marketing, sales, or even coding.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#15. Delegate whenever you can&lt;/strong&gt;&lt;br&gt;
We live in societies because none of us can accomplish everything on their own, so maybe we should take a hint from a concept that’s been proven for thousands of years now. Not to mention that delegating will allow you so much more time to focus on other aspects of your work, thus effectively doubling your output.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#16. Don’t get sucked into the office drama&lt;/strong&gt;&lt;br&gt;
I mean do I really need to explain this one?&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#17. Accept criticism&lt;/strong&gt;&lt;br&gt;
Don’t be so full of yourself, that you can’t even accept constructive criticism, we’re all humans and none of us is perfect, but that doesn’t mean that we can’t become better, by accepting different opinions and working on our self-improvement.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#18. Always keep your word&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;“Measure a man’s worth by his actions alone. For the devil also promises the moon!”&lt;/em&gt;&lt;br&gt;
Our word is our bond, and if your colleagues, managers, or clients can’t trust you, then your career is going nowhere but down.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#19. Stay humble&lt;/strong&gt;&lt;br&gt;
Humility will open more doors than arrogance ever will. It’s important for your career, and your life in general, to be humble and keep your ego in check, don’t let it blind you, and keep you from becoming the best version of yourself.&lt;br&gt;
And as Kendrick Lamar so elegantly puts it:&lt;br&gt;
&lt;em&gt;(Hol’ up, bitch) sit down&lt;br&gt;
(Sit down, hol’ up, lil’ bitch)&lt;br&gt;
Be humble (bitch)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#20. Stop procrastinating&lt;/strong&gt;&lt;br&gt;
Procrastination is a monster that feeds on your habits, the more you feed it, the bigger it gets, and the bigger it gets, the more it will control your life. It’s a vicious cycle, that you can only break with a strong will and the desire to improve your life, and I bet you have it in you, champ.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;#21. “Don’t try”&lt;/strong&gt;&lt;br&gt;
Don’t try, is the philosophy of Charles Bukowski, and I have to say that I agree with it. Always give everything you do a hundred percent, don’t just try to be great, be great&lt;/p&gt;

&lt;p&gt;That’s it for this list, I really hope you enjoyed it, and if you did, please share it with your friends, it’ll mean the world to me as a writer.&lt;/p&gt;

&lt;p&gt;&lt;a href="//www.aladinbs.com"&gt;My website&lt;/a&gt;| &lt;a href="https://twitter.com/BenSassiAladin"&gt;Twitter&lt;/a&gt; | &lt;a href="https://medium.com/@BenSassiAladin"&gt;Medium&lt;/a&gt;| &lt;a href="https://www.quora.com/profile/Aladin-Bensassi"&gt;Quora&lt;/a&gt;&lt;/p&gt;

</description>
      <category>career</category>
    </item>
    <item>
      <title>CSS basics (Part II — Typographie)</title>
      <dc:creator>Aladin Ben Sassi</dc:creator>
      <pubDate>Thu, 11 Jul 2019 01:32:40 +0000</pubDate>
      <link>https://forem.com/bensassialadin/css-basics-part-ii-typographie-3i12</link>
      <guid>https://forem.com/bensassialadin/css-basics-part-ii-typographie-3i12</guid>
      <description>&lt;p&gt;In the first article of this series, I talked about how many web developers find CSS to be, very complicated and hard to write, and I talked about how amazing it is, and what amazing things we can do using it.&lt;br&gt;
In this guide, I’ll talk about something very important, something every designer, and front-end developer needs to know and be familiar with, which is, of course, the typography.&lt;br&gt;
You have no idea how much the font, font size, and color, can make all the difference, and how many good websites, failed because they didn’t pay much attention to it. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The pillars of CSS&lt;/strong&gt;&lt;br&gt;
If I had to divide it into separate chapters, it would look something like this:&lt;br&gt;
· Animation (Already covered here: &lt;a href="https://medium.com/@BenSassiAladin/css-basics-part-i-animations-d944518f2474"&gt;https://medium.com/@BenSassiAladin/css-basics-part-i-animations-d944518f2474&lt;/a&gt;)&lt;br&gt;
· Typography (What part II will cover)&lt;br&gt;
· Most used CSS properties&lt;br&gt;
· Backgrounds&lt;br&gt;
·Borders&lt;br&gt;
· Shapes&lt;br&gt;
· Positioning&lt;br&gt;
· Selectors&lt;br&gt;
· Browser support&lt;br&gt;
· Functions&lt;br&gt;
· Units&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Typography&lt;/strong&gt;&lt;br&gt;
CSS has a large number of text properties, and I remember when I started learning them, I had a hard time remembering all the functions. So here’s a list of all the properties and their use.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Font-based properties:&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;font-family: allows you to choose the font for your text&lt;br&gt;
font-size: allows you to set the size of the font&lt;br&gt;
font-style: allows you to choose the style of the font (normal, italic, oblique)&lt;br&gt;
font-weight: allows you to choose different font weights (normal, bold, bolder, lighter) or with numeric values (100, 200, 300… 900)&lt;br&gt;
font-variant: allows you to set a paragraph to a small-caps font (normal, small-caps)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Text-based properties:&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;color: allows you to choose the color of the font, you can do so by naming the color (blue, red, orange…) or using the hex code (#0000ff, #ff0000, #ffa500..)&lt;br&gt;
direction: allows you to change the direction of the text to right to left, or left to right (rtl, ltr)&lt;br&gt;
letter-spacing: allows you to choose the distance between letters in the text (2px, 4px, 6px, -2px, -4px…)&lt;br&gt;
line-height: allows you to choose the distance between lines in the text. you can either choose to use numbers that will be multiplied by the font-size, a fixed height in pixels or percentage of the current font-size&lt;br&gt;
text-align: allows you to choose the alignment of the text (left, center, right, justify) text-decoration: allows you to choose the decoration of the text (none, underline, overline, line-through)&lt;br&gt;
text-indent: allows you to choose the indent of every first line in a text with fixed values (10px, 20px, 50px …) or percentage of the width of the parent element (5%, 20%, 30% …)&lt;br&gt;
text-shadow: allows you to add a shadow to your text. this property has multiple values. h-shadow v-shadow blur-radius color (2px 3px 2px #000)&lt;br&gt;
text-transform: allows you to change the form of the text (uppercase, lowercase, capitalize)&lt;br&gt;
unicode-bidi: is used with the ‘direction’ property and allows you to set or return whether the text should be overridden to support multiple languages in the same document (normal, bidi-override)&lt;br&gt;
vertical-align: allows you to set the vertical alignment of the text (baseline, sub, super, top, text-top, middle, bottom, text-bottom) or you can use numeric or percent values.&lt;br&gt;
white-space: allows you to choose how white space in the text is handled (normal, nowrap, pre, pre-line, pre-wrap)&lt;br&gt;
word-spacing: allows you to choose the length of space between words (10px, 20px, 50px …)&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;br&gt;
Typography is an important part of a website, but sadly most developers ignore it and focus on other aspects. There are a lot of websites and resources online that could further help you become better at choosing fonts, and color combinations. &lt;br&gt;
I hope this article helped you learn even a new property or value.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>CSS basics (Part I — Animations)</title>
      <dc:creator>Aladin Ben Sassi</dc:creator>
      <pubDate>Thu, 11 Jul 2019 01:27:01 +0000</pubDate>
      <link>https://forem.com/bensassialadin/css-basics-part-i-animations-5ie</link>
      <guid>https://forem.com/bensassialadin/css-basics-part-i-animations-5ie</guid>
      <description>&lt;p&gt;If I had a nickel for every time someone told me they didn’t get CSS, didn’t like it, or how complicated it is, I’d probably have enough money to not need to work anymore.&lt;br&gt;
CSS is neither hard nor complicated, it’s amazing, fun and simple to write, once you understand it&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The pillars of CSS&lt;/strong&gt;&lt;br&gt;
If I had to divide it into separate chapters, it would look something like this:&lt;br&gt;
· Animation (What Part I will cover)&lt;br&gt;
· Typography&lt;br&gt;
· Most used CSS properties&lt;br&gt;
· Backgrounds&lt;br&gt;
·Borders&lt;br&gt;
· Shapes&lt;br&gt;
· Positioning&lt;br&gt;
· Selectors&lt;br&gt;
· Browser support&lt;br&gt;
· Functions&lt;br&gt;
· Units&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What will the first part of this article cover&lt;/strong&gt;&lt;br&gt;
For the first article of this series, I decided to focus on two subjects, Animations, and Typography. These are two areas a lot of junior developers struggle with and hopefully, I’ll explain everything as clearly as I can.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Animations&lt;/strong&gt;&lt;br&gt;
CSS3 animation was in my opinion, a big revolution in the web industry, simply because we were no longer limited to using Javascript and jQuery to animate our webpages.&lt;/p&gt;

&lt;p&gt;Now let’s start with the basics, You can animate your objects on the 3 axes X, Y and Z, you can zoom in, zoom out, blur, fade, grayscale… But to do that you’ll have to learn most of the effects CSS has to offer.&lt;br&gt;
These are the seven animation properties:&lt;/p&gt;

&lt;p&gt;&lt;em&gt;animation-name: animation-name; &lt;br&gt;
animation-duration: 1s; &lt;br&gt;
animation-timing-function: linear; &lt;br&gt;
animation-delay: 0s; &lt;br&gt;
animation-iteration-count: infinite; &lt;br&gt;
animation-direction: alternate; &lt;br&gt;
animation-play-state: running;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Animaion-name&lt;/strong&gt;: Specifies the name of the @keyframes animation duh.&lt;br&gt;
&lt;strong&gt;Animation-duration&lt;/strong&gt;: Specifies how many seconds or milliseconds an animation takes to complete one cycle.&lt;br&gt;
&lt;strong&gt;Animation-timing-function&lt;/strong&gt;: Specifies the speed curve of the animation.&lt;br&gt;
&lt;strong&gt;Animation-delay&lt;/strong&gt;: Specifies when the animation will start.&lt;br&gt;
&lt;strong&gt;Animation-iteration-count&lt;/strong&gt;: Specifies the number of times an animation should be played.&lt;br&gt;
&lt;strong&gt;Animation-direction&lt;/strong&gt;: Specifies whether or not the animation should play in reverse on alternate cycles.&lt;br&gt;
&lt;strong&gt;Animation-play-state&lt;/strong&gt;: Specifies whether the animation is running or paused.&lt;/p&gt;

&lt;p&gt;You might be thinking that having to write all of this every time would be a pain, but lucky for us there is an alternative syntax, which goes something like this:&lt;br&gt;
&lt;em&gt;animation: animation-name 1s linear 0s infinite alternate;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Now to where the magic really happens. After identifying your animation and all its properties, it’s time to animate the object, and the way to do that depends on how many states the animated element has. If it’s only two, you can do this:&lt;/p&gt;

&lt;p&gt;&lt;em&gt;@keyframes animation-name{&lt;br&gt;
from{/&lt;/em&gt; Your first state &lt;em&gt;/;}&lt;br&gt;
to{/&lt;/em&gt; Your last state &lt;em&gt;/;}&lt;br&gt;
}&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;But if you have more states you can do this:&lt;/p&gt;

&lt;p&gt;&lt;em&gt;@keyframes animation-name{&lt;br&gt;
0%{/*animation&lt;/em&gt;/;}&lt;br&gt;
25%{/&lt;em&gt;animation&lt;/em&gt;/;}&lt;br&gt;
50%{/&lt;em&gt;animation&lt;/em&gt;/;}&lt;br&gt;
75%{/&lt;em&gt;animation&lt;/em&gt;/;}&lt;br&gt;
100%{/&lt;em&gt;animation&lt;/em&gt;/;} &lt;br&gt;
}*&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion&lt;/strong&gt;&lt;br&gt;
The possibilities are truly endless for what you can do with CSS’s animations, I’ve seen people do amazing things with it, and I even coded my own pure CSS slider with it back in the day, which was used by thousands of websites because of how lightweight it is. Use your imagination and put what you’ve learned to the test, surprise me and surprise yourselves.&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Bad habits that could cost you your career</title>
      <dc:creator>Aladin Ben Sassi</dc:creator>
      <pubDate>Tue, 09 Jul 2019 01:20:28 +0000</pubDate>
      <link>https://forem.com/bensassialadin/bad-habits-that-could-cost-you-your-career-14el</link>
      <guid>https://forem.com/bensassialadin/bad-habits-that-could-cost-you-your-career-14el</guid>
      <description>&lt;p&gt;Whether you’re a software engineer, consultant or a freelancer, we all have certain bad habits, or sins, that in moderation can be tolerated, but in excess would most likely cost us our careers, and I don’t know about you, but I definitely don’t want to lose mine.&lt;/p&gt;

&lt;p&gt;So I decided to write down the seven deadly sins of engineering, going through all the bad habits that I see in myself and other developers around me, in an attempt to hold myself accountable to my actions, and anyone else who read this word-vomit of mine, after all, we can’t claim ignorance, once we’ve been informed.&lt;/p&gt;

&lt;p&gt;And if you’re wondering, yes, I did choose seven sins because it sounds cooler, don’t judge me, and deadly is an exaggeration, but to be honest, I would die if I lost my career and ended up homeless, I’m not equipped to handle the wilderness, so it’s not that much of a stretch.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Procrastination:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I’ve always had this mental image of procrastination, as a small monster, that we feed by giving in to it. The more we listen to its whispering, the more it grows and gets a better hold of our lives. Mine is the size of the empire state if we’re being honest here, so I sought to make certain changes in my life, to no longer be this monster’s little bitch, if you’d pardon my French.&lt;/p&gt;

&lt;p&gt;You’ll know that you suffer from this sickness if you wouldn’t put in any work in anything until the last second, and a bigger monster, called deadline shows up to whip your ass into shape.&lt;/p&gt;

&lt;p&gt;My best advice is to try and set daily goals for yourself that you need to achieve before you hit the bed. Start small, and work your way up to bigger goals and tighter timelines, only then will you be a functional member of society again.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Indifference:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;We all like to think of ourselves as the rebels, the rock stars and the cool kids on the block, so we fake indifference at times, and we fake it so well that we even convince ourselves, thinking that this persona is what will elevate our coolness and make life easy, while not knowing that there’s a reason most rock stars turn up dead before they hit 50.&lt;/p&gt;

&lt;p&gt;Indifference in our work can be identified in not accomplishing some of our daily goals, just because we wanted to hang out with friends or spend the whole day binge-watching series. We can also notice it in the lack of desire to learn new technologies, and staying up to date with our work.&lt;/p&gt;

&lt;p&gt;My answer for you here is simple ladies and gentlemen, whenever you feel indifferent about your work, imagine yourself fighting with a raccoon for a day old burger in the dumpster, that’ll get you caring real fast, and if that still doesn’t work, then maybe you can remind yourself of why you fell in love with coding in the first place, and remember all the people that count on you to bring your A-game every day.&lt;/p&gt;

&lt;p&gt;But the raccoon scenario is the one that actually does it for me, and if I’m being honest here, I don’t think I can take it down, I’d starve.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Greed:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;None of us can deny the fact that money runs the world, and that to a certain extent we need it to make life better, but things start to go to shit when we allow it to run every part of our lives.&lt;/p&gt;

&lt;p&gt;The second we start changing companies and dumping clients for slightly better pay, without giving any care to our personal happiness, and whether this new job will be fulfilling or not, that’s when we lose our happiness and turn to procrastination and indifference as a coping mechanism.&lt;/p&gt;

&lt;p&gt;Take care of your mental health and personal happiness first people, then the money comes as a very distant second.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Pride:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;We all have that one story where we fired a client or left a job for pride, whether the client made your life hell, or your manager was actively trying to suck your soul out, because she’s a blood-sucking succubus, and in most cases I agree with people who leave for these reasons, after all as I was saying, your happiness comes first.&lt;/p&gt;

&lt;p&gt;But then there are cases, where we sabotage ourselves and careers for pride, and the examples are infinite, such as refusing to admit a mistake, or not wanting to take someone’s advice despite them having more experience than you.&lt;/p&gt;

&lt;p&gt;Keep your pride in check, and know when something is affecting your happiness, or just affecting your huge throbbing ego.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Deceit:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;I mean this one is just obvious, deceit doesn’t only ruin careers, but relationships and life in general too. But what I’m here to preach against, is when we justify deceit as means to an end.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;“Yes, I totally worked on this design for twenty hours, and didn’t spend most of the time screwing around and got all of this done at the last minute”&lt;/em&gt;, Or &lt;em&gt;“Of course I finished that report you asked for, and I’m not rushing to my office right now to do it, because my attention span is that of a five-year-old, and I forgot to do it when you asked me to”&lt;/em&gt;.&lt;/p&gt;

&lt;p&gt;At the end of the day, lies are lies, and if you ever get caught, no matter how small the lie is, you’ll lose that person’s respect and trust.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Wrath:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Okay, this one goes out to all of you red lanterns out there, first of all, I’m sorry if I offend you, and please don’t track me down and murder me in a fit of blind rage.&lt;/p&gt;

&lt;p&gt;Anger is something we all struggle with, but the second we let it interfere with our life in general, and work particularly, that’s when things take a sharp turn to the worst.&lt;/p&gt;

&lt;p&gt;If you feel like you’re about to explode and yell at a client or a manager, or do something you’d regret, take a breather and walk away you psychopath, most times you can’t take back what you said in anger and you’d regret it for the rest of your life, so try to keep a cool head and don’t take things personally, chances are the person that’s getting on your nerve, is having a bad day and didn’t mean anything they said or did.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Sloth:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;You might ask me what’s the difference between sloth and procrastination, and to that, I answer, shut up, don’t put me on the spot here, I thought we were friends.&lt;/p&gt;

&lt;p&gt;But in all seriousness, the difference between sloth and procrastination is very clear, we’re lazy if our motivation to spare ourselves effort trumps our motivation to do the right or best or expected thing, but unlike the lazybones the procrastinator aspires and intends to complete the task under consideration, and, moreover, eventually does complete it, albeit at a higher cost to himself.&lt;/p&gt;

&lt;p&gt;Try to focus on your goals, and understand that you’re only hurting yourself, you’ll have plenty of time to rest when you’re dead.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Conclusion:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;At the end of the day, we’re all humans and we make mistakes more often than not, but the best thing about humanity is our never-ending quest to better ourselves and improve our life in general. It’s never too late to turn your career around, and it never will be, unless you’re dead, then it’s obviously too late, but you’re reading this, so get to work.&lt;/p&gt;

</description>
      <category>advice</category>
      <category>career</category>
      <category>humor</category>
      <category>engineering</category>
    </item>
    <item>
      <title>A simple guide to coding interviews</title>
      <dc:creator>Aladin Ben Sassi</dc:creator>
      <pubDate>Mon, 08 Jul 2019 17:32:25 +0000</pubDate>
      <link>https://forem.com/bensassialadin/a-simple-guide-to-coding-interviews-3oni</link>
      <guid>https://forem.com/bensassialadin/a-simple-guide-to-coding-interviews-3oni</guid>
      <description>&lt;p&gt;What most people don’t realize is that interviewing is a skill in its own right, one that you can learn and get better at, by studying and practicing. Not only will your knowledge in algorithms and your stack be tested, but also your character, overall knowledge, and your ability to work under pressure.&lt;/p&gt;

&lt;p&gt;I’ve been in my fair share of interviews, as the interviewer, and the interviewee, and in time I gathered enough experience to know how to land the job, or the contract, and negotiate for the highest salary that I can get. And this is the skill that I hope to pass on to you through this guide.&lt;/p&gt;

&lt;p&gt;Most young grads, perceive coding interviews, as this huge monster, standing between them, and their dream job, but know that with enough preparation, you can make this monster your bitch.&lt;/p&gt;

&lt;p&gt;Now let’s get down to business, I’ll break this guide down to 5 sections, Technical questions, Design questions, Behavioral questions, psychological tricks and finally some negotiation tips to make sure you have enough in your bank account to treat yourself every now and then, and maybe buy me a beer if I help you land a job.&lt;/p&gt;

&lt;p&gt;Technical questions:&lt;/p&gt;

&lt;p&gt;This aspect depends on the size of the company you’re applying to join, the bigger the company, the more sophisticated the process is, but I’m here to prepare you for every possible scenario, and although the process might differ, there’s a lot in common too.&lt;/p&gt;

&lt;p&gt;Mostly small companies will have you go through a number of coding interviews, usually, it’s two interviews and can go up to three, anything above that and you’re on your own pal, just kidding I got your back, don’t worry.&lt;/p&gt;

&lt;p&gt;Now back to it. These interviews will almost always have you write code or solve a problem on a whiteboard, you’ll also be tasked sometimes to work on a small project on your own, or answer algorithm questions.&lt;/p&gt;

&lt;p&gt;Now big companies have a slightly different approach for interviewing, it usually starts with a phone screening, then a few coding interviews from home, and finally if you pass everything, you’ll be invited to an onsite interview.&lt;/p&gt;

&lt;p&gt;For the technical part, you might be a great developer, but the technical questions you’ll be getting, will focus on data structures and algorithms, you’ll, of course, be asked about the languages and frameworks used at the company you’re interviewing with, but those are easy compared to the in-depth algorithm questions you’ll be asked, since most developers only remember them from their years of college, and that knowledge has long since been forgotten. But you have nothing to fear because there are a few tools that you can use to brush up on them. Hackerrank, Learneroo, and Leetcode are great for learning data structures and algorithms. Make sure you practice daily.&lt;/p&gt;

&lt;p&gt;When it comes to specific technologies, languages, and frameworks, you should practice the stack of your choosing, and maybe build a few projects using it, to get better at it, and add to your portfolio, not to mention that this way, you’ll discover your weaknesses while developing and have the chance to improve them, instead of having the interviewer discover them for you during the interview. It’s worth noting that there are a lot of websites and books that offer in-depth courses on most languages, and I advise that you take a look at one that covers your stack and get to know it better.&lt;/p&gt;

&lt;p&gt;Design questions:&lt;/p&gt;

&lt;p&gt;Design questions, are when interviewers give you a product, whether it be a search engine, a social network or even a job board, and ask you to design the system architecture of that product.&lt;/p&gt;

&lt;p&gt;Most developers are familiar with some of the design elements, such as the DNS server, load balancer, databases, etc. However, even the most jaded of engineers, struggle with these type of questions, so don’t worry if you have no idea how to pass this part of the interview, the interviewer already knows that you’re a junior developer, who has never –probably- designed a scalable and production-level system before.&lt;/p&gt;

&lt;p&gt;Although interviewers don’t expect you to answer this sort of questions perfectly, they will however judge you based on how you approach big problems, and keep in mind that you should ask a lot of questions to learn more about the system you’re designing, so you can validate your assumptions, and answer the question in a very iterative way with the help of the interviewer.&lt;/p&gt;

&lt;p&gt;To prepare yourself for the design questions, you need to read about the different components of every software system, and although you don’t need to understand everything in details, you should be aware of the different components and concepts.&lt;/p&gt;

&lt;p&gt;Some of the components you’ll find in most systems are Domain Name System (DNS), Content Delivery Network (CDN), Load Balancer, Reverse Proxy, Application layer, Database, Cache, Asynchronism…&lt;/p&gt;

&lt;p&gt;Behavioral questions:&lt;/p&gt;

&lt;p&gt;A company will not hire you just for your technical skills, but also for your character, and whether you will be a good fit or not, to their already established company culture.&lt;/p&gt;

&lt;p&gt;To determine that, an interviewer will ask you a number of questions, such as “Why do you want to work here?”, “What’s a difficulty you’ve faced working with a group and how did you help solve it”, Or “have you ever chocked the life out of someone, looked deep into their eyes and watched as the flames of their existence extinguished” Well maybe not the last one, but you get the idea.&lt;/p&gt;

&lt;p&gt;You should answer these questions as honestly as possible unless your answer will incriminate you in a homicide, because if you lie and get the job, you might find yourself working at a place where you don’t really belong, so answer with confidence and conviction, and everything will be alright.&lt;/p&gt;

&lt;p&gt;Psychological tricks:&lt;/p&gt;

&lt;p&gt;There are a lot of “tricks” that you can use to establish a connection with the person interviewing you, and boost your chances of getting the job:&lt;/p&gt;

&lt;p&gt;· Always tailor your answers to the interviewer’s age.&lt;/p&gt;

&lt;p&gt;· Find something in common with your interviewer, this could be anything from going to the same college to sharing common interests outside of work.&lt;/p&gt;

&lt;p&gt;· Mirror the interviewer’s body language, but don’t be obvious or creepy about it.&lt;/p&gt;

&lt;p&gt;· Compliment the company and demonstrate respect for what they’ve achieved.&lt;/p&gt;

&lt;p&gt;· Speak expressively.&lt;/p&gt;

&lt;p&gt;· Talk about your weaknesses as well, show them that you’re only human, and are working to better yourself.&lt;/p&gt;

&lt;p&gt;· Make sure you show confidence and deference simultaneously.&lt;/p&gt;

&lt;p&gt;· Showcase your potential.&lt;/p&gt;

&lt;p&gt;· Hold eye contact, but not aggressively you creep.&lt;/p&gt;

&lt;p&gt;· Wear something clean, simple, and inoffensive.&lt;/p&gt;

&lt;p&gt;· Listen attentively when they talk and make sure to ask a lot of questions too.&lt;/p&gt;

&lt;p&gt;· Take a shower before your interview, some of you will think that this is something obvious, but talking from my experience as an interviewer, I assure you it’s not.&lt;/p&gt;

&lt;p&gt;Negotiation tips:&lt;/p&gt;

&lt;p&gt;Congratulations! You followed my tips and landed yourself a job. Now it’s time to learn how to negotiate and get yourself the best deal you can possibly have.&lt;/p&gt;

&lt;p&gt;Here are a few negotiation tips that you should definitely follow if you want to pay off those lingering student loans before your 70th birthday:&lt;/p&gt;

&lt;p&gt;· Always keep the door open, and never give up your negotiating power until you’re 100% ready to make a final decision. Go over as many points as possible without giving up the power to continue negotiating.&lt;/p&gt;

&lt;p&gt;· Information is power my friend, so never reveal your cards. Most companies will try to know how much you’re currently making, or what other companies are offering you, so make sure you keep verbally jiu-jitsu-ing out of these questions and never reveal or comment on any details of the offer unless you’re asking for clarification.&lt;/p&gt;

&lt;p&gt;· Stay positive, even if the deal is not good enough for you, keep a positive attitude and let them know that although the pay/timing/numbers are not working out, you’re still very much interested in the company and its mission and are willing to work together on a package you’re both happy with.&lt;/p&gt;

&lt;p&gt;· Be winnable, and not just by giving the company the impression that you like them or are passionate about their mission, but by being open and frank with them, and not playing any stupid games. Be clear and unequivocal with your preferences and timeline.&lt;/p&gt;

&lt;p&gt;· Have alternatives because if more than one company is after you, it’ll give you an edge when negotiating, and give them a sense of urgency, so take advantage of that.&lt;/p&gt;

&lt;p&gt;· Don’t be an idiot and get everything in writing.&lt;/p&gt;

&lt;p&gt;A few more tips:&lt;/p&gt;

&lt;p&gt;There are a lot of other things you can do to make sure you give yourself an edge when applying for a position, and the more prepared you are, the better your chances will be of finally moving out of your parents basement, or getting a better job so you can finally afford to eat more than twice a week:&lt;/p&gt;

&lt;p&gt;· Doing mock interviews before you jump into the real ones is a great way to build confidence. Download a spreadsheet of general interview questions, and have your friend take you through them.&lt;/p&gt;

&lt;p&gt;· Ask questions during the interview, it’ll make you look smarter, and will give you the opportunity to get to know the company and its employees better.&lt;/p&gt;

&lt;p&gt;· During the coding phase, focus on writing clean, styled and overall understandable code, and make sure you explain to the interviewer the code you are producing.&lt;/p&gt;

&lt;p&gt;Go forth and conquer:&lt;/p&gt;

&lt;p&gt;I’ve taught you everything I know my child, now go forth and put your new-found interviewing skills to the test. Apply to your favorite companies, and make sure to make me proud. Use your new found knowledge for the good and prosperity of mankind, or you can just make a lot of cash, either one is good I guess. Good luck!&lt;/p&gt;

</description>
      <category>codenewbie</category>
      <category>career</category>
      <category>junior</category>
      <category>guide</category>
    </item>
    <item>
      <title>The trip from a junior to a senior developer.</title>
      <dc:creator>Aladin Ben Sassi</dc:creator>
      <pubDate>Mon, 08 Jul 2019 07:02:29 +0000</pubDate>
      <link>https://forem.com/bensassialadin/the-trip-from-a-junior-to-a-senior-developer-2pdf</link>
      <guid>https://forem.com/bensassialadin/the-trip-from-a-junior-to-a-senior-developer-2pdf</guid>
      <description>&lt;p&gt;The career of a software engineer is a curious one. It’s a tale of hardship and woe, filled with ladders to climb, deadlines to beat, and management to appease.&lt;/p&gt;

&lt;p&gt;In my infinite wisdom, I saw that the life cycle of a developer can be categorized into five different levels.&lt;/p&gt;

&lt;p&gt;Level 1 (0–2 years):&lt;/p&gt;

&lt;p&gt;You just graduated from college, a young boy with young boys dreams, big eyes and a thirst for life. You start your work hoping to change the world, invent the next big app or make enough money to retire young and spend the rest of your life on exotic beaches, sleeping with models, who have a thing for nerds.&lt;/p&gt;

&lt;p&gt;The first few months seem very alike, you’re assigned the same tasks every day, and your only job is not to screw up big time. It’s not what you were hoping for, giving your superior level of intellect and mad skills on the keyboard, but you’re certain that soon enough things will change.&lt;/p&gt;

&lt;p&gt;You wake up one day after two years and realize that you’ve been living the same day and writing the same code over and over again. It makes you sad, but you feel a wind of change coming.&lt;/p&gt;

&lt;p&gt;Level 2 (2–5 years):&lt;/p&gt;

&lt;p&gt;You’re no longer a junior developer now, you’ve been promoted to a full-blown software engineer, basically a rock star, without the money, women, and fame.&lt;/p&gt;

&lt;p&gt;You’re no longer being supervised by that old mean engineer who hates you because he knows you’re a better coder than he is. You’re being assigned small tasks, which you accomplish flawlessly -most of the time- and you can finally start feeling valued and useful. Everyone respects you now… right?&lt;/p&gt;

&lt;p&gt;Level 3 (5–10 years):&lt;/p&gt;

&lt;p&gt;You’ve been doing this long enough now to be called a senior developer and assigned your own team. You’ve long have given up on your dreams to change the world, sleep with models or even make the next big app, after years of seeing people try to do it and fail, and having tried yourself to launch something and failed at it too, though you wouldn’t admit it, and hide behind the excuse of not giving it much attention or that people are not ready for your creation yet.&lt;/p&gt;

&lt;p&gt;On the bright side, you get to handle big projects now and manage your team the way you want to. You also make a lot of money, which is what you always hoped for! But on the downside, you’re honestly not into coding that much anymore, your team is a bunch of brats who constantly think they’re better than you, without realizing you’ve been helping them grow all along, and you’re very sure they see you like the old mean guy who’s there to make their life a living hell, oh! And although you do make a lot of money, almost half of it goes to pay the rent or mortgage, because you had to move to an expensive city to get a better offer.&lt;/p&gt;

&lt;p&gt;Level 4 (10–20 years):&lt;/p&gt;

&lt;p&gt;At this point in your career, you have a choice to make, either you join management and become another suit who’s only concern is cutting corners to save money, and to meet this quarter’s earnings expectations, or to continue being a developer, who’s work now consists of managing multiple teams and making sure everyone’s doing their job.&lt;/p&gt;

&lt;p&gt;You were always a rebel, you chose to code because it gave you freedom, heck, you wrote your best lines high, listening to Led Zeppelin, so I’ll assume you’d go with continuing on your path as a developer.&lt;/p&gt;

&lt;p&gt;It’s been years since you enjoyed coding or went to the office excited about something. Last night you looked in the mirror and saw your empty dead eyes looking back at you, and you couldn’t help but remember the young boy with dreams and hopes who came to work with a big smile and shiny eyes.&lt;/p&gt;

&lt;p&gt;You decide to do something about this. You realized that just because you didn’t get everything you wanted, it doesn’t mean that your career was not fulfilling, and perhaps it’s time for you to move on and start giving lectures or maybe even take a teaching position.&lt;/p&gt;

&lt;p&gt;Level 5 (20 years+):&lt;/p&gt;

&lt;p&gt;At this point, you discover that you’ve been granted the powers of an almighty wizard, by the benevolent gods of coding. You magically turn to 24 again and have a spell for infinite money.&lt;/p&gt;

&lt;p&gt;You get your happy ending after all, and you spend the rest of your life on exotic beaches sleeping with models.&lt;/p&gt;

</description>
      <category>devops</category>
      <category>humor</category>
      <category>junior</category>
    </item>
    <item>
      <title>No-no’s of software engineering</title>
      <dc:creator>Aladin Ben Sassi</dc:creator>
      <pubDate>Mon, 08 Jul 2019 06:57:45 +0000</pubDate>
      <link>https://forem.com/bensassialadin/no-no-s-of-software-engineering-2pbf</link>
      <guid>https://forem.com/bensassialadin/no-no-s-of-software-engineering-2pbf</guid>
      <description>&lt;p&gt;In a stressful and deadline-bound job like software engineering, the no-no’s are way more than the yes-yes’s.&lt;/p&gt;

&lt;p&gt;Clients or managers, who despite their lack of knowledge in your work, feel obliged to give you their opinion on technical details and best practices. That’s like me walking into a doctor’s office in the middle of surgery and suggesting that maybe his patient doesn’t need a new heart, what he really needs is love.&lt;/p&gt;

&lt;p&gt;Pseudo “rock-star” employees. The typical overachievers who got too much praise growing up, and now feel that they’re too good to follow instructions because they wrote an app that finds the best ice-cream flavor to match your personality based on what you’re wearing that day, or something useless like that when they were in college. What they don’t understand, however, is that no matter how smart you are, you’re never too smart to hear the advice of an experienced developer and to follow it, and that a false sense of grandeur sets you up for a lifetime of disappointment.&lt;/p&gt;

&lt;p&gt;People who think they’re holier-than-thou because they work as developers. The community has been getting very toxic lately with people who assume that they’re smarter/better/wiser just because they learned how to put together lines of code. You can see this all over Quora, or Hacker News, or Reddit, or any other place frequented by these delusional individuals. Armed with their keyboards, and energized by their Red Bulls and espressos, they roam the internet letting people know how superior their way of life is, how their ideas will change the world, and how being anything other than a developer makes you a plebian. I stopped answering questions on Quora for over a year because it got too much to handle; most of the questions were like this: “Why aren’t more people software developers?” or “How can I learn web development, to join the master race?” Your job doesn’t make you smarter or more special than other people.&lt;/p&gt;

&lt;p&gt;I can’t help but wonder if this would have been more light-hearted had I been in a better mood. Food for thought.&lt;/p&gt;

</description>
      <category>humor</category>
      <category>software</category>
      <category>coding</category>
      <category>javascript</category>
    </item>
  </channel>
</rss>
