Doing new things is hard, choose your hard

In my last post I touched on the topic of quitting, and how easy it is to take the easy path instead of the hard one and quit. Most of us quit all the time, big and small things alike. When things get a little tough, it’s really easy to drop back to a place where you feel comfortable. And while we often quit, we rarely understand the consequences of that act before it’s too late.

When was the last time that you were assigned with something you’ve never done before and it seemed easy and straightforward? If I had to guess, the answer is never. New things are hard to us for a reason, we didn’t create any patterns around the process yet. Even if it’s something that you’ve enjoyed doing in the past, it takes you time to get accustomed to it in a different environment.

Maybe this is a filter of some kind, because people who persist in their efforts are the ones you hear or read about. We all have our struggles in life, the only thing that differs is will you give up or continue fighting, will you take the easy road, or the hard road. Just bear in mind that the easy road can and probably will be harder for you in the long run.

People have different learning patterns, and different backgrounds. While new associations in our mind are easy to create, it sometimes takes time to link everything together, or to figure it out. That process is hard. If you ever tried to learn a foreign language you’ve encountered it, along another issue, you need to use the language to learn it.

The best way that I’ve experienced is using what you’ve learned from day one, it will be hard for a while, but much easier in the long run. Yes, you will go full Tarzan mode with constructs that translate to “I want go food” or something similarly funny.
The trick is not to be afraid or ashamed while you are learning something new, otherwise it wouldn’t be hard for you to do it. If you are surrounded with the right kind of people, they will encourage you and help you, even dedicate significant amounts of time into helping you, because that is something they also care about.

Same thing goes with learning new computer languages, or programming paradigms. Yes it’s hard to learn Object-Oriented programming, it is also hard to learn Functional programming. While I’m on the subject, it’s pretty hard to learn testing, and that is just the high level stuff. Everyone one of us has been an apprentice at one point or another.

Sometimes I am still an apprentice in some new technology that I’m interested in. You will always have new stuff to learn, it will (probably) be hard, maybe you even won’t succeed, but are you willing to immediately give up the benefits you could reap for your whole lifetime just because you need to suffer for a day, or a week? I’m not, when something gets too easy for me, I just have to find something new that will push me even harder in the direction I’m moving to. It’s pretty easy to figure out that most of the things that you appreciate in your life are hard. Raising children is hard, running a business is hard, competing in sports is hard, sometimes even breathing seems hard. Do you really want to spend your whole life as a couch potato, watching TV and not achieving what you might if you just put in some effort?

I’ll end this with a nice quote from a three-time Tour de France winner Greg LeMond: “It never gets easier, you just go faster.”

It's really easy to quit

I remember when I was in my late teens, although I rode on the bicycle around a lot, I never did anything longer than a few kilometres in one go. I had an old steel mountain bicycle, heavy as hell, but it was enough for me.

Once I decided to visit a friend who lived about 25km away, and decided to bike there. It was one of the worst experiences in my life. I barely managed to do it, having cramped muscles for days after that, also I went back home by train, bicycle with me.

Nowadays, after 15+ years I can successfully ride for 100 and even more kilometres, probably using less energy than ever before. I admit that I have better bike(s) now, but that is not the point. 15 years ago I just gave up on the spot, as soon as it got hard. Quitting was easy, except for the next couple of days when I could barely walk, but the act of quitting seemed pretty liberating. You just run away and don’t look back.

A few months ago I went on a ride alone, and after 2 pretty hard rides in the two days preceding the current ride, my legs were pretty empty in the start. And I had 4 climbs on the route. I almost gave up after the first climb, but then something hit me. The pain you are feeling now, just means that when you go out tomorrow, or the next day, you will be even stronger than you are today.

By putting constant effort, especially when you don’t feel like it, you will gradually improve. I like to measure my cycling performance a lot, because if you can measure something, you can improve it. I’m far from being a pro, and I’m pretty far from competitive racing, excluding one with myself. The bike pulled me out of a really bad place I had put myself into. I’ve lost 40 kilo over 3 years on the bike, and now I’m feeling better than ever.

I’m using a cycling analogy here, because it’s the easiest thing that comes to mind here. But the real story I want to tell you is about yourself. You are the one that quits when it gets hard, I know it, I was the same, quitting when things get tough. Requiring constant and immediate feedback is something people cherish a lot, but the things that give you immediate feedback are mostly bad for you.

What I’m trying to point out here is that you are the only person responsible for your own destiny. If you are willing to go through life as a quitter, giving up as soon as it gets a bit harder than usual, you will become weaker and weaker. By not challenging yourself with new things every day you slowly degrade.

There is a pretty common saying that businesses which are not growing are falling apart. You could be stagnating, but given that everyone else around you is growing, you might as well be in the red, it is mostly the same. And this relates to people really well. Just think about your parents, or grandparents. Some of them know how to use a computer, some are pretty proficient with it, and some can’t even use a microwave.

Back to you, if you are a programmer, there was a time in your life when the only thing you knew how to code was ‘Hello World!’ in some language that you don’t use anymore. Why did you continue through the hardships of learning other languages, patterns, algorithms, just to call it quits today?

I hopefully have a couple of decades left to do something productive, can’t even imagine the language I’ll maybe be writing code in before I choose to retire. I might not even be writing code then, but I’m not afraid of it at all. Life is a constant change, and by accepting it, and going with it, you will find yourself being a better person than you were before.

One person told me a pretty resonating thing, and it stuck in my head. If I didn't challenge myself to do hard things, I would still be stuck doing a shitty job that I did 3 years ago. And it’s true for me too, on different levels. I now have a really great job, more energy and a lot more chance to hopefully get to see and play with my grandchildren in 20+ years. And I don’t really care about what will happen tomorrow, because I know I will deal with it.

P.S.

Exercising is really good for you, and you must start immediately if you want to play with your grand children, even great-grandchildren if you are really lucky. I know people who can’t even go out and play with their own children because they just called it quits on their own health. It’s really sad, but I don’t think they will even live to see their grandchildren. Tech jobs are pretty sedentary ones, and I know how easy it is to stuff yourself with fast food, while working 12+ hour days, getting bigger and bigger. If you are in this situation and don’t know where to start, there is a great book by Joe Kutner called The Healthy Programmer. If you need more help don’t be afraid to contact me. I’ll be glad to help you get on your way to feeling and doing better.

On continuous improvement

It is really hard starting something new. Just consider the first time you sat down at the computer to write a “Hello World!” program. Following the tutorial or whatever, you were able to copy/paste or type the code into some IDE or a REPL environment and run it. Then you decided to create “an application” and it was nothing like that Hello World example. Maybe you saw the video on How to create a blog in 15 minutes, and got hooked to this fancy new Ruby on Rails thing like I have. Regardless of the way you started, there is one constant in everything that you do.

If you do something consistently over a longer period of time, you will eventually get really good at it.

Consider blogging, or technical writing for example. Unless you were some kind of a teen writing prodigy, you can’t write that well. Especially if the school system you were a part of didn’t encourage creative writing. I struggled with essays and general writing throughout my school years. And I never thought that writing was a skill that everyone should have. After almost 6 years of on and off blogging, I believe writing to be a really necessary skill, and it really changes the way you express your self, and the way you convey ideas to other people.

Looking back at my posts from 2009, I can’t stop being sad for myself, because of the bad grammar, sentence construction, and even the notion of conveying ideas to people. But it got better over time. I used to struggle when writing 200-300 words in a blog post, and now a 500+ word blog post almost comes naturally.

Gradual improvement is a great thing, and if you hone your skill consistently, you will become an expert in what you do. I know I’m far away from being the next Seth Godin when it comes to writing, but I can try to improve with each post I write, and I can create a habit of writing every day.

You can do the same, choose a skill you want to improve, don’t set any goals or anything, just do it. If it’s writing, make a calendar entry each day and tell yourself to write e.g. 500 words that day. It can even be 100 words, creating a good habit is what matters most, not the amount of doing something.

Don’t set your goals too high, because you will never accomplish them, and you will loose the taste of all those small wins that come when you do get good at something, and realise that you have done something worthy.

There is a great app that I use, and it’s called Commit, and it is probably the best thing I could have done for me. This app, in addition to the Tiny Habits method by B.J. Fogg, was the cornerstone in most of my work.

It is hard to force yourself to sit down and write a 2000+ words blog post, but it is pretty easy to sit down and write 500 words. If you struggle with 500, start with 100. It won’t take you more than a couple of minutes accomplishing that goal, and if you really like what you are writing about, you can always continue. It’s the sitting down (or standing up at a desk) and starting that counts. Make that your daily habit.

You can always do more than the minimum, but set a realistic minimum that you can do each day. And your skills will improve. Of course, they will improve faster if you do it more, but don’t overdo it, because if you burn out, it will be really hard to start again.

Specialist or Generalist

While reading a lot of stuff about freelancing, consulting and business in general, I stumble upon a lot of suggestions and advices to niche down, become a specialist in some weird and obscure skill, which will give you the recognition of being the go-to person for X. This thing surely works, and you shouldn’t throw the advice out the window, but there is also a different approach, what if someone is not satisfied with doing only one thing over and over again?
I had a pretty great and stable job before I joined the startup I’m working for now. I could have done that job (working primarily as an Oracle DB consultant, writing PL/SQL) for a long time. Maybe make that thing my career niche. But I chose something different, something more tangible, developing web applications. Although I did introduce Ruby on Rails at my previous company, and some of it stuck there, there was something else a startup gives you, something that everyone should experience in their career.
That thing is generalisation, because a startup doesn’t have 150 people working on a lot of things, but maybe 3-5 people, all working on the same system. That is the great opportunity to learn new things, and reuse some things you have learned before. Sure, you won’t be able to niche down and specialise in one particular subject, but you will learn a lot of new things just going along, and working with great people that have the same goal as you. You might start off as a senior developer, but over time you pick up DevOps, front-end skills, design skills, and even business and marketing skills. That is of course, if you choose to do that. You can always stick to doing your job if you see it as a job and never think about this again. But by the mere fact that YOU are reading this, you don’t qualify for the Dark Matter Developers group, and want to know and do more.
What I’m aiming at here is pretty simple, becoming a well rounded individual won’t make you a ninja X technology developer, it probably won’t give you much recognition in the community as being the go-to person for X, but it will make you a better person in the process. You will also realise that your development work isn’t the most crucial part of the product, but that there would be no product without all of the people, and their skills that go into creating it. Understanding how things are built, and what goes into them is a much better feeling than jamming down only on your main skill and monetising it, without a greater purpose in life.

Review: The Design of Everyday Things

I’ve recently read a great book, recommended by Merlin Rebrovic in one of his blog posts. I’ve always seen design as something abstract, something you need to be born to, and avoided it like the plague, not being born for it was the main excuse. However, after seeing that it is not really that hard and that you can learn design, I started to read a lot about it. I’m not an expert (yet), and I don’t see myself doing design professionally, at least not soon, but learning new and unexplored things brings me pleasure, and stepping out of your small box is great, because there is a whole world out there.

The Design of Everyday Things, a book by Don Norman, is a great intro into the world of design. And by that I mean industrial design. How to create products that people can use with ease and are nice to look at. I’ve read only the second edition of the book, which was updated to accompany the computerised, mobile world we live in now.
The book has plenty of examples of good and bad design choices, with the masochist teapot on the cover being one of the funniest. You will learn how design can help reduce the number of airplane accidents, and pretty much all accidents, where enough knowledge to operate something isn’t in the world, but required to be in the head. You can see a nice comparison of head vs. world knowledge here.
Badly designed products are all around us, and sometimes we don’t even notice them. It’s mainly because we have learned to cope with our stove where the burner to knob mapping isn’t that obvious. Maybe we have some exotic faucet in the bathroom, which is so clear to us, but guests tend to have issues operating a simple (or not so simple) faucet. Sometimes people who design these things are inexperienced, and wanting to make the prettiest looking faucet, not thinking of its usability, and putting too much knowledge in the head. Who want’s to read a 5 page manual just to be able to wash their hands? I know I don’t.
But nevertheless we buy those things, sometimes they are so stunning, and we just need to have them, not thinking about the usability. Sometimes we are on a budget, and we buy the things we can.
Sometimes the issue is in the production costs. It’s one thing to design a great product in a fancy 3D design tool, where only sky is the limit, and completely another to produce that thing, market it, and sell it at a price the market is willing to pay. Those design examples are limited to high-end products, where Apple comes to mind, or Bang & Olufsen, but their products aren’t really affordable to regular people.
Maybe if the people realised what a badly designed product is, they wouldn’t buy it, and the manufacturer would have to redesign it, because the competition has a product that is perfectly designed. But sadly we can’t hope for this to happen. Low budget, poorly designed products will always have a market, because people can’t spend enough for a quality product, and novelty items, made only to praise the visual design and not usability will always find their buyer among the people that need to have that fancy something, that no one can and will use for it’s intended purpose.
This book has opened my eyes to the crimes we developer often do against usability and design. It also pushed me in the direction of exploring user experience and design, in general. Hopefully, this will be a fun journey.

Caution! Reading will change your life (for the better)

I tend to read a lot, averaging at least one book per week. Remembering back, I think the reading started when I was a kid, during the war, being in a shelter (or the basement) was a regular thing. And for a 9-10 year old kid, books were the best thing to forget everything. My mother worked next to the library, and she brought me an average of 3 books each week. They were mostly child books, ranging from Erich Kästner to Karl May and his Winnetou. There were a lot of books by Croatian authors too, but I can’t remember them all now. After that school kicked in, then Real Life™ and somehow I stopped reading so much. At least stopped reading books. I was always following technical newsletters and blogs, but forgot that I should be reading real books along the way.Reading a book will change your life, even if you only read one book, end to end. Each one you add to the mental pile, your mind expands in that direction, and you are a wiser person. I’m not only talking about technical books here, on the contrary, I’ve found non-technical books to be more mind expanding than technical ones.I recently realized that, even I’ve been on this spree for the last 3 years, the greatest benefit of reading fiction, is using your imagination. No movie will ever give you an experience of reading a book. I don’t prefer audiobooks either because it’s too hard to pause and visualize the moment, the scene. The book that got me back in was Game of Thrones, and I’m a little bit sad that I watched the series before because my imagination was somewhat flawed by scenes from the series. From then on, I’ve read biographies, technical books, fiction, nonfiction, psychology, design, basically anything that was recommended by a credible enough source. Each one pushed me a little bit further forward.I’ve achieved more on a personal and business level in the last 3 years than I have in all of the previous years combined, and I believe that reading that much had to do a lot with it. Although we own a TV set, I rarely watch it (you have to watch Top Gear when you see it’s on). The best thing you can invest in is knowledge, keep reading, even if the book you read tends to be really bad, you can leave it half way, but don’t give up on reading. There are great books out there, and things you have never dreamed of can come true because you have to be able to imagine your end goal before you get to reach it.

Old habits die hard (The Power of Habit review)

I have a few quite obnoxious habits and a few really good ones. I have tried to get rid of some of them, and succeeded in most cases, but some or most of them just reappear after some time. Have you ever wondered why that happens? A book by Charles Duhigg, The Power of Habit: Why We Do What We Do in Life and Business explains it in detail, and I’ll write just a brief outline of the book. You should definitely read the book.
All habits have a system by which they work. And as we learn things, they all become habits to us. Let’s take driving, for example. When I first learned how to drive, it was all finicky and stressful. And by that I mean just driving forward, knowing when to change the gear (we generally have manual transmissions here), how to give the turn signal, when to turn the wheel, etc. Driving is a set of a large number of skills, but people seem to drive pretty comfortably, without the stress mostly. When we learn a skill, and use it on a day to day basis, our brain (the reptilian one) creates the habit loop. The process can be summed to cue > routine > reward. And most of human behaviour can be explained by that simple formula.
When you feel a sensation or some other cue, for example, when I wake up, I need some mental calmness time, to prepare me for the day. My routine was to make a coffee, and aimlessly surf the net or read emails while drinking it. The reward was mostly lacking because I would lose valuable time, but the habit was there, and hard to change. But, when you recognise the cue, and the reward you expect, it is not that hard to change the routine in between. You just have to find something that will give you the same reward as the bad habit you have right now, but now it will be better for you. When you feel the urge to smoke a cigarette, it’s surely not nicotine calling you, but something else. Maybe you are bored, maybe you want to talk to someone, maybe you just smelled some great coffee, and the first action you take is to pull that cigarette out. I’ve been there, and the urge to light it up is devastating, it’s automatic behaviour for you. Like you have been programmed to do it.
Programming is the correct word, we program ourselves to do a lot of stuff. You probably take the same route to work each day. Or when you go outside to take a walk, to refresh yourself, you take the same route. Our brains work like that because if we processed and decided on each piece of information we collect, our brains would explode, and we would not get to think about the greater stuff in life. Walking by itself would be a chore big enough that our minds couldn’t wander off to think about art or love.
Learning new things, like a new language or driving, is forcing us to create new mind maps of stuff we have to do, so we experience anxiety and sometimes quit and completely leave the new skill behind. But if we persevere and stick on to learning it, new mind maps create in our brain, and we form a habit of doing those new things. Computer programming has somewhat become a habit for me, at least the stuff I do on a day to day basis. I feel the same anxiety when learning a new language, a new framework, or having to solve a different problem.
Once you find similarities between the things you are doing at the moment, and the stuff you have done before, your brain will connect the dots, and make it an easier path for you. All problem solving skills are mental habits of some kind, you learn how to identify the problem (the cue), you know how the solution should look like (the reward), and you fetch the stored routine from your brain to solve the problem. Of course, the routine might not fit the problem 100%, but that is where we adapt and create a new routine for the problem at hand.

Learning Ruby and Rails in 2014

In the last few weeks, I have been approached by a couple of people who are interested in learning Ruby and/or Ruby on Rails. And for their sake, and for my own interest, I investigated what are the best resources at the moment. Ruby and Rails ecosystem is a one that evolves really fast, and while I like it a lot, because we have new toys to play with all of the time, it is not a great thing for new developers. Also Rails has grown to this big behemoth, and although I like Rails a lot, and will continue using it as long as I can, I’m not sure it is newbie friendly. But I’ll address that one later.

Before i list the resources, and their brief descriptions, there are a couple of rules you should follow, to have an easy ride with Ruby on rails. A basic understanding of HTML/CSS is needed, because, you are learning a web framework, which incidentally runs in the browser, which incidentally uses HTML/CSS to render the pages. I’m not telling you that you need to be a frontend developer/designer, just to have a basic knowledge of it. Ok, no more philosophy from now on. You should also be acquainted with JavaScript, not that you need to be an expert in it, but just have a basic knowledge of it. You are going to use it if you want to have any dynamic interactions in your web applications, but it is not as crucial as HTML/CSS. After you have your prerequisites in order (and it will probably take you a couple of days to get acquainted with HTML/CSS and JavaScript), you can start learning a new programming language, and a web framework. The basics will come in handy if decide to use any other programming language and framework, if your goal is to create web applications.

Learning Ruby on Rails is mostly done backwards, at least that is the way I’ve done it myself. I first “learned” Ruby on Rails, then started learning Ruby, because it was pretty stupid not being skilled in a language that runs your favorite web framework. Who would of thought that by learning the language, you get to understand the framework better. You should not be a fool that I was, and learn the language first. Also, learning Ruby on Rails is a really big bite to chew all at once. Here is a brief overview of the things you are expected to learn all at once:

  • A new language
  • A whole web framework and its abstractions
  • HTML/CSS (if you haven’t done web development before)
  • JavaScript (or CoffeeScript and its abstractions)
  • Probably much more stuff that I don’t remember anymore

Learning Ruby

First thing you want to know is how Ruby syntax looks like, and how it behaves. I think that the best possible way to find out is to Try Ruby. This is a great interactive tutorial, which helps you to learn the language basics. There is also one more site, which I’ve been using lately, to get an insight into other programming languages: Learn X in Y minutes and specifically their Ruby tutorial. After you have done the ruby tutorials, and at least grasped the language basics, you will be able to decide if you like it or not. If you chose not to experience the awesomeness of Ruby, and everything that comes with it, that is OK. To each their own. If you want to continue learning ruby, this is probably the best book there is: Programming Ruby or colloquially called “The Pickaxe book”, from which you will not only learn about the Ruby programming language, but there are also three Regex chapters from which you can learn to be a wizard.

Learning Ruby web frameworks

After you have learned Ruby, the next step on your itinerary is learning Ruby on Rails. I would like you to make a short break here, and learn something a bit closer to the metal. Sinatra is a great small Ruby web framework which will teach you how to build small and simple sites or API endpoints. Also, it is possible to mount Sinatra apps in Rails, and the Rails learning curve will be easier for you if you already know Sinatra. And maybe you decide that Sinatra, with some added libraries is enough for your project. So as a next step, I want you to look into Padrino which is built upon Sinatra, and it also gives you a predefined way to build your web applications.

Learning Ruby on Rails

Learning Ruby on Rails is a big task, and if you set out to do it, it can take you 15 minutes to build a blog, and probably half a decade to master everything that Rails can (and will be able to) do. In my opinion, the best resource to get you on the way is The Ruby on Rails Tutorial by Michael Hartl. A book (and videos) that have helped mold plenty of Ruby on Rails developers. There is also a free online version, if you are on a budget. There is of course the official Ruby on Rails Guides, and one of my favorite books on Rails, The Rails 4 Way which is a great resource, and each time I get through it, I find another new thing I should be using. There is (was) a great screencast resource packaged in Railscasts. Although it isn’t updated anymore (I really hope Ryan gets back soon), it is still a great asset for solving most of the specific problems you will encounter as a Rails developer.

I have focused mostly on free resources, although some of the books I recommend come with a price tag attached. The price, although it might seem a lot to you, is really reasonable, and is much lower than the value these books provide. Even if you don’t stick with Ruby, owning The Pickaxe Book, and going through the first part of it, will teach you some stuff you can probably employ in your language of choice.

I however, chose Ruby, and I’m happy with it. And it doesn’t mean I am, or will only be doing Ruby for the rest of my life (I probably could, if you don’t count JavaScript), but that Ruby on Rails solves the database backed web application problem in the best way I can imagine. And if that isn’t your game, you probably didn’t get to this part of the post. If you have, please try Ruby, it is a beautiful programming language that was designed to make developers happy.

I attended my first Coderetreat

As the title says, I attended my first (and definitely not last) Coderetreat. And we also made history, because it was the first one in Croatia. It was organized by Željko Filipin and Aljoša Mohorović, and we also had a great facilitator, Péter Zsoldos, who really made us think differently in solving an easy problem, at least it was easy on first sight. Also, his insights into our code and the ways we should think outside of the box, even if it doesn’t make sense in a given situation, really helped. Big thanks to Tentamen for sponsoring the event, and Aljoša for being a great caterer who transformed the sponsorship into enough food and drinks for everyone.

You are probably wondering what a Coderetreat is now. It is an activity that serves to teach us (the programmers) better ways of thinking, while doing TDD, and pair programming all the time. There were about 15 of us, and that was an ideal number. Not to crowded, and everyone had another pair for each session. Working with people you regularly don’t work with, switching between development environments, and sometimes languages can be really hard, if you don’t open yourself to accepting every possible way of stepping out of your comfort zone, so you can learn a thing or two. If you have never been to an event like this, I won’t spoil the fun, but you can always go and read about the Structure of a code retreat on their official website.

The problem to solve is always the same, it’s Conway’s Game of life. A simple mathematical problem, that only has four rules you need to obey. By using a simple enough, but not a trivial problem, one can focus on sharpening the skills as a programmer, which we tend to skip in our day to day lives. We “know” how to do our work, and rarely step out of the comfort zone, and do a thing differently, not because it should be done that way, but for fun, trying different things, and learning new tricks.

I learned a lot there, and had fun pair programming with people I never had a chance to work with, which is great by itself. All of us are quirky in our own way, and adapting to that takes some time, but it makes you a better person, not just a better programmer. I’m looking forward to attending the next event.

Learn a new programming language (basics) fast

While doing my best to understand Emacs, that I have been using as a primary development, writing, and play environment, I have felt the need to learn Emacs Lisp, or elisp. Because I didn’t know anything about lisps, aside from the basics learned while reading the SICP book, which I sadly have not finished yet. I could make a ton of excuses here, but I just found another, more interesting thing to read, or do.

What I wanted to do with elisp, as it is crucial to know it, before you can do any reasonable customization of Emacs, is to learn the most basic elements fast enough, without diving really deep into the language semantics and rules. I just wanted to be able to hack up a few functions, change a thing or two, and not feel like an idiot while looking at other people’s .emacs configuration files.

There is a really nice website I have found, to accomplish just that. To teach you the basics of almost any programming language (even brainfuck), in a reasonable amount of time. One pomodoro should be a reasonable amount of time for that. As there are only a couple of things you really have to know in the start, to grasp a language, and see if it is worth for you to dig in deeper, and explore it.

The site is called Learn X in Y Minutes, and it is a community site, which means, that if your favorite language is not included there, you can submit a pull request with the tutorial, and they will gladly accept it. I have only gone through the elisp tutorial, and it is well made, but as i glanced through some of the other ones, they seem good too.

In the start you should know how to assign variables, create methods, get some feedback in the REPL or the console, and maybe create classes if the language is one of the Object Oriented languages. Of course, I might be missing something, but those are the basics for me personally, to see if the language is worth learning, for me of course, not for you.

The site has made me wonder, if I could maybe come back to the dreadful C, and master it this time, after about a dozen failed trials over the years. I probably won’t be using it to program anything in it, but it is a magical unicorn for me, the thing i never did have the time to learn properly, maybe I will never need it, but there is no 32 year old who can say he won’t be needing a certain skill for the rest of his life. So I won’t say that either.

Here is the site link again, in case you don’t want to look for it in the text above: Learn X in Y Minutes