diff --git a/org/_posts/2020-09-07-career_boosting_books.org b/org/_posts/2020-09-07-career_boosting_books.org index 8e404f98..9bafb54f 100644 --- a/org/_posts/2020-09-07-career_boosting_books.org +++ b/org/_posts/2020-09-07-career_boosting_books.org @@ -20,7 +20,7 @@ Do reading the books help? Yes, I would say so. Some of these books at least hel This is by no means an exhaustive list with all books, but is meant as a list to get you started boosting your career. There may be future more advanced book lists if people are interested. That list would contain more architecture books, patterns, books about useful tools and methodologies and so on. -*NB! This article contains Amazon Affiliate links aka paid links* +*NB! This article contains Amazon Affiliate links aka paid links. This means I earn commissions on qualified purchases.* # Just getting some more space :) #+BEGIN_EXPORT html @@ -46,10 +46,10 @@ This is by no means an exhaustive list with all books, but is meant as a list to <> * Clean Code by Robert C. Martin (aka Uncle Bob) -Most of you have probably heard [[https://amzn.to/3Vpxfhg][this book]] mentioned before, as it has become one of those books that everyone mentions. The author has also become quite a legend in the software development world with his books, courses and long career. +Most of you have probably heard [[https://amzn.to/47mrhni][this book]] mentioned before, as it has become one of those books that everyone mentions. The author has also become quite a legend in the software development world with his books, courses and long career. #+BEGIN_EXPORT html - + #+END_EXPORT ** What is it about, and why should you read it? @@ -62,7 +62,7 @@ Learning to write code that is easy to read for others is paramount in an enterp When you write code that is easier to read, it will be easier for others to read. As well as yourself the next time you revisit your older code! That way you can work more effective with other people, and we can write code faster and enjoy working with it. -I can recommend [[https://amzn.to/3CIAjxp][Clean Coder]] as well on what it takes to be a professional programmer (according to the author), but it did not make as much as an impact on me as Clean Code. That being said, I still VERY much recommend reading it! It gives you much insight on what you should know if you want a professional career in software development. +I can recommend [[https://amzn.to/43RfoTi][Clean Coder]] as well on what it takes to be a professional programmer (according to the author), but it did not make as much as an impact on me as Clean Code. That being said, I still VERY much recommend reading it! It gives you much insight on what you should know if you want a professional career in software development. # Just getting some more space :) @@ -73,16 +73,16 @@ I can recommend [[https://amzn.to/3CIAjxp][Clean Coder]] as well on what it take <> * Design Patterns: Elements of Reusable Object-Oriented Software by Eric Gamma, Richard Helm, Ralph Johnson and John Vlissides -I know [[https://amzn.to/3MmlyDJ][this book has a long name and many authors]] (known as the Gang of Four), but don't be scared! While some of the patterns in this book might be outdated by now, a lot of them are still useful today. Many of the patterns might not be something you write yourself from scratch, but you will find them in many libraries and code generators that you use. Notable examples include Lombok (Builder, UtilityClass for static factory method, and more), Spring Framework (Singleton, Factory, Proxy etc.) and the SDK for Android development (Adapter and more). +I know [[https://amzn.to/45cVdjN][this book has a long name and many authors]] (known as the Gang of Four), but don't be scared! While some of the patterns in this book might be outdated by now, a lot of them are still useful today. Many of the patterns might not be something you write yourself from scratch, but you will find them in many libraries and code generators that you use. Notable examples include Lombok (Builder, UtilityClass for static factory method, and more), Spring Framework (Singleton, Factory, Proxy etc.) and the SDK for Android development (Adapter and more). #+BEGIN_EXPORT html - + #+END_EXPORT ** What is it about, and why should you read it? -A collection of many design patterns, which are repeatable solutions to commonly occurring problems, to assist you while designing new software. These come in several categories: creational (creating objects), structural (e.g, how objects are accessed and used) and behavioral (e.g, interactions between objects). While some of them are not so relevant anymore, it is still a useful to see how different problems can be solved (e.g, object creation and delegation). Many of the patterns are still found in modern software, and have clearly influenced their design (see introduction for examples). I would say skip chapter one, as it is clearly dated. If you think the entire book is dated and hard to read, I have heard that a lot of people enjoy the more modern [[https://amzn.to/3SOrZ50][Head First Design Patterns book]] (not read it myself though). +A collection of many design patterns, which are repeatable solutions to commonly occurring problems, to assist you while designing new software. These come in several categories: creational (creating objects), structural (e.g, how objects are accessed and used) and behavioral (e.g, interactions between objects). While some of them are not so relevant anymore, it is still a useful to see how different problems can be solved (e.g, object creation and delegation). Many of the patterns are still found in modern software, and have clearly influenced their design (see introduction for examples). I would say skip chapter one, as it is clearly dated. If you think the entire book is dated and hard to read, I have heard that a lot of people enjoy the more modern [[https://amzn.to/441bXcG][Head First Design Patterns book]] (not read it myself though). ** What does it help with in your career? @@ -97,10 +97,10 @@ You will recognize patterns in libraries you learn, frameworks you use and so on <> * Effective Java by Joshua Bloch -Together with the next entry, [[https://amzn.to/3SPKBl1][Effective Java]] is one of the more practical books on the list. It shows you in essence how to write good Java code, and code you should avoid writing. Another selling point is that it is written by one of the original authors of the Java standard library; Joshua Bloch himself! If you need a book with code examples and practical tips, I highly recommend this one! +Together with the next entry, [[https://amzn.to/3s394eo][Effective Java]] is one of the more practical books on the list. It shows you in essence how to write good Java code, and code you should avoid writing. Another selling point is that it is written by one of the original authors of the Java standard library; Joshua Bloch himself! If you need a book with code examples and practical tips, I highly recommend this one! #+BEGIN_EXPORT html - + #+END_EXPORT @@ -121,14 +121,14 @@ If you don't ever use Java (or another JVM language), it won't... But if you do, *Update 2022: Seems like the newest edition for sale uses JavaScript instead of Scheme. The MIT website still have the second edition that uses Scheme. Not read the newest JavaScript version (put it in my reading list for now), but the original is fantastic! Might be weird to recommend a very non-Java book on this list, but it teaches you different ways of thinking which are useful no matter what language you end up working in (probably except very low level languages).* -The obligatory "think differently" book on this list! [[https://amzn.to/3rNsJeB][SICP]] is a classic book, and for good reason. Many developers today are mostly familiar with object oriented languages like Java, C# and C++, so learning a more functional language like Scheme can help broaden your horizons. (it is not a language that only supports functional programming like Haskell though...). +The obligatory "think differently" book on this list! [[https://amzn.to/3KuxKCV][SICP]] is a classic book, and for good reason. Many developers today are mostly familiar with object oriented languages like Java, C# and C++, so learning a more functional language like Scheme can help broaden your horizons. (it is not a language that only supports functional programming like Haskell though...). This book can also be [[https://mitpress.mit.edu/sites/default/files/sicp/index.html][read for free online at MITs webpages]], which is a bonus! #+BEGIN_EXPORT html - + #+END_EXPORT @@ -150,11 +150,11 @@ If you use any higher level (C level or above) language, and especially those wi <> * Release It!: Design and Deploy Production-Ready Software by Michael T. Nygard -So you have written your code, and everything has gone well during testing. Now we are ready for production! Wait, are we really? [[https://amzn.to/3yuAhaa][Release It!]] is a book about what you should make sure of before doing to production, as well as common pitfalls. +So you have written your code, and everything has gone well during testing. Now we are ready for production! Wait, are we really? [[https://amzn.to/3QtwqUC][Release It!]] is a book about what you should make sure of before doing to production, as well as common pitfalls. #+BEGIN_EXPORT html - + #+END_EXPORT ** What is it about, and why should you read it? @@ -171,7 +171,7 @@ Going from writing software to getting it in production is an important step. Ho <> * Bonus: The Pragmatic Programmer by Dave Thomas and Andy Hunt -I would have gotten a lot of complaints from now until eternity if I did not include this title! It is a classic within the niche of software development books, and for good reason. It contains a mix of practical skills you should learn, as well as how you should think about many different topics. It even includes some tips on what you should do to improve your skills. The older edition is called [[https://amzn.to/3CnAv3Q][The Pragmatic Programmer: From Journeyman to Master]], and the newer 20th anniversary edition is called [[https://amzn.to/3RHxwZT][The Pragmatic Programmer: your journey to mastery]]. I would probably recommend that you choose the newer edition, but I'm mentioning the older one as that is the one I have read (I have sadly not read the newest edition). +I would have gotten a lot of complaints from now until eternity if I did not include this title! It is a classic within the niche of software development books, and for good reason. It contains a mix of practical skills you should learn, as well as how you should think about many different topics. It even includes some tips on what you should do to improve your skills. The older edition is called [[https://amzn.to/45hdJHW][The Pragmatic Programmer: From Journeyman to Master]], and the newer 20th anniversary edition is called [[https://amzn.to/3OgaAkE][The Pragmatic Programmer: your journey to mastery]]. I would probably recommend that you choose the newer edition, but I'm mentioning the older one as that is the one I have read (I have sadly not read the newest edition). # Just getting some more space :) @@ -183,4 +183,4 @@ I would have gotten a lot of complaints from now until eternity if I did not inc <> * Bonus 2: Clean Architecture by Robert C. Martin (aka Uncle Bob) -[[https://amzn.to/3rKnpc9][Clean Architecture]] is mainly about [[https://en.wikipedia.org/wiki/Software_architecture][software architecture]] and structure, with the angle on making it easy to work with and maintainable. While I think the architecture presented is interesting, I think the best parts of this book is the summary of the SOLID principles and of general architecture concepts. SOLID principles (which could probably be the topic of their own article) are useful to know for structuring object oriented software, as well as understanding how different libraries and frameworks are structured. +[[https://amzn.to/3OJBKlr][Clean Architecture]] is mainly about [[https://en.wikipedia.org/wiki/Software_architecture][software architecture]] and structure, with the angle on making it easy to work with and maintainable. While I think the architecture presented is interesting, I think the best parts of this book is the summary of the SOLID principles and of general architecture concepts. SOLID principles (which could probably be the topic of their own article) are useful to know for structuring object oriented software, as well as understanding how different libraries and frameworks are structured. diff --git a/org/_posts/2021-07-28-summer_books_2021.org b/org/_posts/2021-07-28-summer_books_2021.org index 0741f0d0..ce7198b5 100644 --- a/org/_posts/2021-07-28-summer_books_2021.org +++ b/org/_posts/2021-07-28-summer_books_2021.org @@ -11,16 +11,16 @@ tags: books retro-computing Summer is a great time to read some books and releax! A lot of us have vacation time or similar where we can enjoy our time in the sun, or inside on a rainy day. So without further ado, today I will give you ideas for some fun books to read this summer! -*NB! This article contains Amazon affiliate links, aka paid links.* +*NB! This article contains Amazon affiliate links, aka paid links. This means I earn from qualified purchases.* -** [[https://amzn.to/3ysvSUX][Hackers: Heroes of the computer revolution]] +** [[https://amzn.to/45hXwCm][Hackers: Heroes of the computer revolution]] #+BEGIN_EXPORT html - + #+END_EXPORT -To me, this book is two things: A history book about the early pioneers in software, and a proof to enthusiasts/nerds that you are not alone. This book is about the entusiast who think using and playing with computers are an end-goal in itself. From the early hackers in the Railroad club at MIT (60s) to the game developers at Sierra On-Line in the 80s and 90s. Common to all of them is the love for technical details and the want to do technologically awesome things! Many famous and less famous people are mentioned throughout the book, Richard Stallman, Bill Gosper, Mark Zuckerburg (updated edition), Ken Williams to name a few! Expect model trains with a twist, Conways Game of Life, PDP-1s, home computeres, computer games, and more! Never feel alone as a rockstar programmer again! +To me, this book is two things: A history book about the early pioneers in software, and a proof to enthusiasts/nerds that you are not alone. This book is about the entusiast who think using and playing with computers are an end-goal in itself. From the early hackers in the Railroad club at MIT (60s) to the game developers at Sierra On-Line in the 80s and 90s. Common to all of them is the love for technical details and the want to do technologically awesome things! Many famous and less famous people are mentioned throughout the book, Richard Stallman, Bill Gosper, Mark Zuckerburg (updated edition), Ken Williams to name a few! Expect model trains with a twist, Conways Game of Life, PDP-1s, home computers, computer games, and more! Never feel alone as a rockstar programmer again! # Just getting some more space :) #+BEGIN_EXPORT html @@ -29,13 +29,13 @@ To me, this book is two things: A history book about the early pioneers in softw #+END_EXPORT -** [[https://amzn.to/3fVMeze][Game Engine Black Book: Wolfenstein 3D]] +** [[https://amzn.to/3OTPSJ3][Game Engine Black Book: Wolfenstein 3D]] #+BEGIN_EXPORT html - + #+END_EXPORT -Love older game engines? Or maybe you are just fascinated with the early days of 3D graphics? Maybe you just also have a crush on John Carmack (and his code off course!)? No matter the reason, as long as you are fascinated by technical details, I would really recommend reading this book. The old ray casting algorithm is fascinating, and the hurdles of MS DOS and early X86 is intersting to read about. If you are less intersted in the technical details, but LOVE to hear about the story of Id Software then [[https://amzn.to/3RLAQ6g][Masters of Doom]] is also an excellent read :) +Love older game engines? Or maybe you are just fascinated with the early days of 3D graphics? Maybe you just also have a crush on John Carmack (and his code off course!)? No matter the reason, as long as you are fascinated by technical details, I would really recommend reading this book. The old ray casting algorithm is fascinating, and the hurdles of MS DOS and early X86 is intersting to read about. If you are less intersted in the technical details, but LOVE to hear about the story of Id Software then [[https://amzn.to/45aXpsF][Masters of Doom]] is also an excellent read :) # Just getting some more space :) #+BEGIN_EXPORT html @@ -44,10 +44,10 @@ Love older game engines? Or maybe you are just fascinated with the early days of #+END_EXPORT -** [[https://amzn.to/3CKfstI][Spying on Whales]] +** [[https://amzn.to/43VMfq6][Spying on Whales]] #+BEGIN_EXPORT html - + #+END_EXPORT I'm not a marine-biologist, but have always been fascinated by the ocean. Whales have an almost majestic beauty, and also have a lot of mystery surrounding them. Did you know that the earliest whales were land-dwelling creatures who habited close to lakes? Or the true extents on whaling on the whale-population? Or that certain rorquals have a sensory organ in their chin to control how much their jaws are able to open? (probably to not rapture their pouches, as they are baleen whales). Marine biologist Nick Pyenson tells his stories of excevations, research and more. If you need some different books than tech and fiction, then I would whole-heartedly recommend this one! @@ -65,4 +65,4 @@ I'm not a marine-biologist, but have always been fascinated by the ocean. Whales ** Bonus..? *Update 2022: Nevermoor and its sequels are amazing! Can't wait for book 4 in October! Well worth the read. The mystery of the wundersmith is unraveled more and more in unexpected ways throughout the series :)* -Considering including a fiction book above, but decided to postpone that to a future article :) If you still really want one from me, then this will do... I'm currently listening to the audiobook of [[https://amzn.to/3ecNhud][Nevermoor: The Trials of Morrigan Crow by Jessica Townsend]]. It's a childrens fantasy book, but is still a fun listen! (Gemma Whelan is a great reader/performer!). It is about a cursed child called Morrigan Crow who finds herself caught up in an magical adventure! (don't want to spoil too much, this isn't a book review after all ;) ). +Considering including a fiction book above, but decided to postpone that to a future article :) If you still really want one from me, then this will do... I'm currently listening to the audiobook of [[https://amzn.to/44VXvUO][Nevermoor: The Trials of Morrigan Crow by Jessica Townsend]]. It's a childrens fantasy book, but is still a fun listen! (Gemma Whelan is a great reader/performer!). It is about a cursed child called Morrigan Crow who finds herself caught up in an magical adventure! (don't want to spoil too much, this isn't a book review after all ;) ). diff --git a/org/_posts/2021-09-22-essential_ayn_rand.org b/org/_posts/2021-09-22-essential_ayn_rand.org index 04b7fb54..33a894d6 100644 --- a/org/_posts/2021-09-22-essential_ayn_rand.org +++ b/org/_posts/2021-09-22-essential_ayn_rand.org @@ -26,9 +26,14 @@ Before I begin, I have to admit I dreaded writing about this for a long time. Wh Now that we have gotten that out of the way, let us continue. What are my criteria here. I've picked out 3 books I think is essential to get to know Ayn Rand's writings and her philosophy. Most of the books are fictional, but still have philosophical under-tones. I think this should be the beginning for exploring her works. -(like Ayn Rand, I will use the term man to mean human. The headings are also Amazon affiliate links!) -* 1. [[https://amzn.to/3fY9MUc][Atlas Shrugged]] +(like Ayn Rand, I will use the term man to mean human.) + + +*NOTE! I use Amazon Affiliate links in the headers below. This means I earn commissions from qualifying purchases.* + + +* 1. [[https://amzn.to/3OMFVNu][Atlas Shrugged]] Who is John Galt? This is the essential question in all of the book. Often mentioned in times of despair, and for questions that people think it's meaningless to ask (because they are in a way impossible to answer). The book follows several characters in a near future where government creates more and more irrational rules and regulations, all posed as acts for the common good, but lobbied through by cronies (people who use government favors to gain special privileges). Dagny Taggart is our main heroine, and we see her fighting to keep her railroad company alive while all of the productive people around her slowly disappear. "What is wrong with the world?". Why ask useless questions? How deep is the ocean? How high is the sky? Who is John Galt? @@ -41,7 +46,7 @@ Atlas Shrugged is probably the best book I've ever read, and it inspired me to w If you disagree with the books message, that is completely fine! You have your own conviction and I have mine. Let's respect each other in a polite tone without the character attacks we often see today. Even if I'm one of those "wacky libertarians" (other peoples words), I understand that someone who is on the other side also works for a world that they perceive to be the best one. -* 2. [[https://amzn.to/3Mm4yOa][The Fountainhead]] +* 2. [[https://amzn.to/3Qt5W5w][The Fountainhead]] Howard Roark is a young idealistic architect who has his own vision, but is forced to choose between it or adapting to what others think is great. At first glance, you may think he sounds like a lunatic, but that is not true. Indeed, he is a visionary. No one who has innovated has ever done what everybody else is already doing. This book deals with themes such as being true to your own ideals, reason, public perception and deception (through media), romantic love, and hate for people being different. We see Roark struggling through life as he unapologetically follow through on his own vision, trying to get the buildings he want to build into reality. He enjoys doing it immensely, and with great passion. From the book we have this exchange between him and the dean of the architect school he is expelled from: #+BEGIN_VERSE @@ -68,14 +73,14 @@ Does that mean that this person is without feelings? No. A man of great passion -* 3. [[https://amzn.to/3T4Vhfo][The Virtue of Selfishness]] +* 3. [[https://amzn.to/45cFIs8][The Virtue of Selfishness]] The two previous books on this list were works of fiction, but this one is different. This book contains a collection of essays on Objectivist ethics. Why do I like this book so much? This book provides answer to a lot of questions relating to morality (i.e, the concept of ethical selfishness), and the introduction of capitalism as the only moral system (and why). -This is NOT the book you should start with. I would first read the fiction books above, enjoy the spectacle and see if you are more curious to learn more about the philosophy. If you are, I would start with this book, then read [[https://amzn.to/3EtnBUP][Capitalism: The Unknown Ideal]], and then go to the rest of her books based upon your interest in the subjects. Whether it is the books about [[https://amzn.to/3VpvFMm][writing fiction]], [[https://amzn.to/3CJsQ1j][writing non fiction]], reading more about [[https://amzn.to/3SNUHTH][why we need philosophy]] (we as in everyone), her other fiction ([[https://amzn.to/3Vh1A1t][Anthem]] and [[https://amzn.to/3SOr2ts][We The Living]]) or something else. +This is NOT the book you should start with. I would first read the fiction books above, enjoy the spectacle and see if you are more curious to learn more about the philosophy. If you are, I would start with this book, then read [[https://amzn.to/3DJcXHL][Capitalism: The Unknown Ideal]], and then go to the rest of her books based upon your interest in the subjects. Whether it is the books about [[https://amzn.to/47hCZQ2][writing fiction]], [[https://amzn.to/3Og941W][writing non fiction]], reading more about [[https://amzn.to/3KRbxz9][why we need philosophy]] (we as in everyone), her other fiction ([[https://amzn.to/3DKwbwQ][Anthem]] and [[https://amzn.to/3Og98ic][We The Living]]) or something else. * Final remarks -Ayn Rand is both an interesting character, as well as having written great works. If you want to learn more about her as a person (she is far from perfect, but no one is!), then I suggest reading the biography called [[https://amzn.to/3VgmnC4][Goddess of the Market: Ayn Rand and the American Right]]. +Ayn Rand is both an interesting character, as well as having written great works. If you want to learn more about her as a person (she is far from perfect, but no one is!), then I suggest reading the biography called [[https://amzn.to/3Og9dm0][Goddess of the Market: Ayn Rand and the American Right]]. Would you have picked any other books as a starting point for someone new to Ayn Rand? Love the books? Hate them? Feel free to share in the comments below :) diff --git a/org/_posts/2021-09-26-scifi_books_to_unwind.org b/org/_posts/2021-09-26-scifi_books_to_unwind.org index dd75bbef..d7ebd9fa 100644 --- a/org/_posts/2021-09-26-scifi_books_to_unwind.org +++ b/org/_posts/2021-09-26-scifi_books_to_unwind.org @@ -15,13 +15,12 @@ Sometimes we all need a break from computers, no matter how passionate we are ab If you have any suggestions for science fiction and fantasy books, feel free to share them in the comments! :) +*(Amazon links in headings and images below, for your convenience. Paid links/Affiliate! This means I earn from qualifying purchases)* -(Amazon links in headings and images below, for your convenience. Paid links/Affiliate!) - -* 1. [[https://amzn.to/3rFnvS7][Rendevouz with Rama by Arthur C. Clarke]] +* 1. [[https://amzn.to/3Og8scE][Rendevouz with Rama by Arthur C. Clarke]] #+BEGIN_EXPORT html - + #+END_EXPORT A spacecraft (first mistaken as an asteroid) is slowly entering our solar system. What is it? Why is it here? These are the questions that a team of explorers on the ship Endeavour are set out to find as they are set to explore this seemingly unmanned vessel. Some believe it is our new Ark that will take us to God, and these are called Techno-Christers (who believe God and Jesus are from space). Others wonder if it is hostile vessel. What is it? What is this ship dubbed Rama? @@ -36,9 +35,9 @@ In my view, this is probably my favorite of Arthur C. Clarkes books. The explora #+END_EXPORT -* 2. [[https://amzn.to/3fURov6][Do Androids dream of electric sheep (aka Blade Runner) by Philip K. Dick]] +* 2. [[https://amzn.to/43Tw4JP][Do Androids dream of electric sheep (aka Blade Runner) by Philip K. Dick]] #+BEGIN_EXPORT html - + #+END_EXPORT This book is very different to the movies, but follows the same character. Rick Deckard is a bounty hunter set to kill six androids (replicants in the movies) in a post-apocalyptic San Fransisco. Most animals are either extinct or close to it. I think the less said, the better here. The book makes us think what it really does mean to be human, and other topics as well. These include off-world colonies on Mars, virtual reality and its role in our life, endangered animals as status symbols, and the human condition (in a depressing way) to mention a few things. Read it for yourself, I would spoil too much by mentioning more :) @@ -50,9 +49,9 @@ This book is very different to the movies, but follows the same character. Rick #+END_EXPORT -* 3. [[https://amzn.to/3T2FNs8][Starship Troopers by Robert Heinlein]] +* 3. [[https://amzn.to/47m98WM][Starship Troopers by Robert Heinlein]] #+BEGIN_EXPORT html - + #+END_EXPORT Some people might notice that this book has the same title as [[https://www.imdb.com/title/tt0120201/][a famous movie franchise]], and the movie is indeed based (very loosely) on the book. The book is about a future America, ruled by a military elite. People who have served in the military gain the right to vote, and get other special privileges. The story follows Johnny Rico, a young recruit progressing through the ranks of the Mobile Infantry (equipped with the now infamous powered armor). The most famous part of the story is the war between the "Bugs"/"Arachnids" of the planet Klendathu, but that is in many ways only a backdrop. The main part of the book (in my view) is the discussion of socio-politic themes, such as capital punishment, suffrage/voting rights and more. The themes are not without controversy, as a lot of people think it promotes militarism. diff --git a/org/_posts/2021-10-26-javascript_the_good_parts.org b/org/_posts/2021-10-26-javascript_the_good_parts.org index 23e907cd..c704b5aa 100644 --- a/org/_posts/2021-10-26-javascript_the_good_parts.org +++ b/org/_posts/2021-10-26-javascript_the_good_parts.org @@ -15,20 +15,20 @@ Today JavaScript (JS) has evolved a lot and has many modern features we associat What I refer to as classic JavaScript is the basic language before classes and other modern features. A lot of these older features still exists, so it is useful to know them if you program in JavaScript (JS). Some things might be obsolete, but it can't hurt knowing more about the core language. -*NB! Post contains Amazon Affiliate links.* +*NB! Post contains Amazon Affiliate links. This means I earn commissions from qualified purchases.* #+BEGIN_EXPORT html

#+END_EXPORT -* [[https://amzn.to/3MhmUzA][JavaScript: The Good Parts by Douglas Crockford]] +* [[https://amzn.to/442ERZT][JavaScript: The Good Parts by Douglas Crockford]] #+BEGIN_EXPORT html - + #+END_EXPORT -[[https://amzn.to/3MhmUzA][JavaScript: The Good Parts]] is an older book by todays standard, so you might wonder if it can help you in the ever changing web development landscape? It might or it might not. To me it helps to know a lot about the core language to find clever solutions and to see patterns in the libraries I might use. I also think it is useful for learning small tips and tricks for smaller inline scripts on websites. You might just think it is a deprecated book, like some Amazon reviewers certainly does. +[[https://amzn.to/442ERZT][JavaScript: The Good Parts]] is an older book by todays standard, so you might wonder if it can help you in the ever changing web development landscape? It might or it might not. To me it helps to know a lot about the core language to find clever solutions and to see patterns in the libraries I might use. I also think it is useful for learning small tips and tricks for smaller inline scripts on websites. You might just think it is a deprecated book, like some Amazon reviewers certainly does. So what kinds of topics does it cover? diff --git a/org/_posts/2021-11-17-favorite_personal_finance_books.org b/org/_posts/2021-11-17-favorite_personal_finance_books.org index 637a5173..06c2be2b 100644 --- a/org/_posts/2021-11-17-favorite_personal_finance_books.org +++ b/org/_posts/2021-11-17-favorite_personal_finance_books.org @@ -32,7 +32,7 @@ Moderation is key. I still buy a lot of things, but most give me either knowledg If you need some more inspiration to improve yourself, I think [[https://themkat.net/2021/09/22/essential_ayn_rand.html][the works of Ayn Rand]] is a great place to find it. It may not be everyones cup of tea though, but I find great motivation from it. -*NB! Amazon affiliate links below (headings + images)! (required to tell you)* +*NB! Amazon affiliate links below (headings + images)! This means I earn from qualifying purchases.* #+BEGIN_EXPORT html
@@ -41,13 +41,13 @@ If you need some more inspiration to improve yourself, I think [[https://themkat -* [[https://amzn.to/3RIx3GB][Rich Dad Poor Dad by Robert Kiyosaki]] +* [[https://amzn.to/45gbVyF][Rich Dad Poor Dad by Robert Kiyosaki]] #+BEGIN_EXPORT html - + #+END_EXPORT -[[https://amzn.to/3RIx3GB][Rich Dad Poor Dad]] is a classic when it comes to personal finance, and for good reason! The book contains many key concepts that are essential to accumulating wealth. Everyone who thinks that there should be another way than just working a job for a salary should read this book! Some key take-aways you will learn more about: +[[https://amzn.to/45gbVyF][Rich Dad Poor Dad]] is a classic when it comes to personal finance, and for good reason! The book contains many key concepts that are essential to accumulating wealth. Everyone who thinks that there should be another way than just working a job for a salary should read this book! Some key take-aways you will learn more about: - *Assets vs liabilities*. An asset put money in your pocket, while a liability take money out of your pocket. Your house, car, consumer credit card debt etc. are all LIABILITIES! Real estate you rent out, bonds stocks, online businesses you own etc. are all assets. Assets can be bought, and they can be built (I like to believe that this website might one day take the step from hobby/passion project rambling to asset). Everyone will have some amount of liabilities, but we should try to minimize them. - *Poor vs rich is a lot about mindset*. Poor people often think things like "I can't afford that", "I don't have time for that", "That is too expensive", while rich people often think the opposite: "How can I afford that?". Questions open your mind, simple stupid answers closes your mind. - *Always continue to learn*. Grades isn't really what matters, it's how you apply your knowledge. Learn about finance, and what I said earlier, a bit of everything. Even if you take a job, can you take it to learn anything you can use later? Maybe you think sales are scary? It can probably be a good idea to challenge yourself and take the job to improve your skills. Work to learn - don't work for money! @@ -62,13 +62,13 @@ Later books in the Rich Dad series also talks about the topic of good debt vs ba
#+END_EXPORT -* [[https://amzn.to/3Cm871X][The Millionaire Next Door by William Danko and Thomas Stanley]] +* [[https://amzn.to/45gL6KU][The Millionaire Next Door by William Danko and Thomas Stanley]] #+BEGIN_EXPORT html - + #+END_EXPORT -Some people think that the rich are rich because they exploit workers or whatever. These people should especially read [[https://amzn.to/3Cm871X][The Millionaire Next Door]]! The book busts a lot of myths many people have about millionaires. In the book you will learn that: +Some people think that the rich are rich because they exploit workers or whatever. These people should especially read [[https://amzn.to/45gL6KU][The Millionaire Next Door]]! The book busts a lot of myths many people have about millionaires. In the book you will learn that: - *Most millionaires are self-made (especially in the US)*. In other words: they have not inherited their wealth! Many heirs waste their money within shorter amounts of time, as they do not have the money management skills their parents had. You still have to learn to manage money if you want to keep it. Allocating time to setting up and maintaining your financial plan is very important. - *Abundant life-styles?* The people with the rich looking things like sports cars and big houses are often not wealthy. The average millionaire is often way more frugal. Investing in assets and your business makes for a greater reward than just flashy things. Many are small business owners who want to expand their business after all. - *Income vs wealth*. Having a high income does not necessarily make you wealthy. What if you lose your job? If your spending is high, I can bet you that things will turn to sh*t. If you have wealth, that is accumulated assets (that produce cash flow), you are better off as you are not as tied down to your job. Like mentioned earlier, this include rental real estate, stocks, bonds, royalties etc. @@ -80,10 +80,10 @@ Some people think that the rich are rich because they exploit workers or whateve #+END_EXPORT -* [[https://amzn.to/3rHFqrx][The 4 Hour Workweek by Timothy Ferriss]] +* [[https://amzn.to/3qgpNKD][The 4 Hour Workweek by Timothy Ferriss]] #+BEGIN_EXPORT html - + #+END_EXPORT The 4 Hour Workweek presents different ways of living than the standard life we have all been sold. Timothy Ferriss travels a lot, and does new things all the time, and so can you! Key take aways: diff --git a/org/_posts/2021-11-27-biographies_about_tech.org b/org/_posts/2021-11-27-biographies_about_tech.org index 4d934cd3..3088cac1 100644 --- a/org/_posts/2021-11-27-biographies_about_tech.org +++ b/org/_posts/2021-11-27-biographies_about_tech.org @@ -13,10 +13,10 @@ Sometimes I enjoy reading a biography about a person I find interesting. There i -*NB! This post contains Amazon affiliate links. (required to tell you...)* +*NB! This post contains Amazon affiliate links. This means I earn from qualifying purchases.* -If you prefer to listen to audiobooks, you can [[https://amzn.to/3rHEQKn][get a free trial for Audible Plus]]. You will get a free audiobook, and a month for free (including the Premium library!). If you are not pleased with it, you can always cancel. I LOVE audible, and have to admit that I have listened to 2 out of the 3 books on this list as audiobooks (yes, on Audible). It is awesome! Especially on the days where my eyes are too tired to open a book or my Kindle. If you have a friend or family member you would like to gift a membership to, [[https://amzn.to/3rECVX1][that is possible as well]] :) (Christmas/Holidays is approaching as I write this!) +If you prefer to listen to audiobooks, you can [[https://amzn.to/3KvuIOG][get a free trial for Audible Plus]]. You will get a free audiobook, and a month for free (including the Premium library!). If you are not pleased with it, you can always cancel. I LOVE audible, and have to admit that I have listened to 2 out of the 3 books on this list as audiobooks (yes, on Audible). It is awesome! Especially on the days where my eyes are too tired to open a book or my Kindle. If you have a friend or family member you would like to gift a membership to, [[https://amzn.to/3qikmL0][that is possible as well]] :) (Christmas/Holidays is approaching as I write this!) #+BEGIN_EXPORT html @@ -25,10 +25,10 @@ If you prefer to listen to audiobooks, you can [[https://amzn.to/3rHEQKn][get a #+END_EXPORT -* [[https://amzn.to/3yvJqiz][Elon Musk: Tesla, SpaceX, and the Quest for a Fantastic Future by Ashlee Vance]] +* [[https://amzn.to/3YpMFUH][Elon Musk: Tesla, SpaceX, and the Quest for a Fantastic Future by Ashlee Vance]] #+BEGIN_EXPORT html - + #+END_EXPORT Elon Musk is an interesting person in many ways. Not only is he now the richest man in the world, but also goes into new things with strong passion. He has been programming from a young age, and is continuously learning new things. In the biography, we follow his early years, his adventures with PayPal, and off course SpaceX and Tesla. We also hear from his closest relatives, ex-wives and more. After reading this book, you will get a unique insight into his non-conforming views and different way of thinking (and his different way of doing things!). @@ -39,10 +39,10 @@ Elon Musk is an interesting person in many ways. Not only is he now the richest #+END_EXPORT -* [[https://amzn.to/3fIMlOk][Steve Jobs by Walter Isaacson]] +* [[https://amzn.to/3OKsz4f][Steve Jobs by Walter Isaacson]] #+BEGIN_EXPORT html - + #+END_EXPORT Steve Jobs is a very colorful character. His unique management style was a topic of debate, and he lived his life in a way that got him insights few others get. From his travels to India to meet a guru, his unique thoughts on hygiene (it is said he stopped showering for a while), to his unique ways of seeing things. He was a visionary who saw possibilities where few others did, ranging from the uses of personal computers to computer graphics at Pixar. His unique vision made many products possible: the Macintosh, NeXT Computers, the iPhone and more. While there are a few negative sides, like his relationship with his daughter (who he claimed was not his for many years), it is part of the experience of reading about his life. He was bold and lived life with his passion and vision, and that is something we can all take inspiration from! @@ -53,10 +53,10 @@ Steve Jobs is a very colorful character. His unique management style was a topic #+END_EXPORT -* [[https://amzn.to/3S2rMtX][Idea Man: A Memoir by the Cofounder of Microsoft by Paul Allen (autobiography)]] +* [[https://amzn.to/3Qo9JkD][Idea Man: A Memoir by the Cofounder of Microsoft by Paul Allen (autobiography)]] #+BEGIN_EXPORT html - + #+END_EXPORT Paul Allen is probably most notably known as the cofounder of Microsoft, where he made unique contributions to the early history of personal computers. That is probably, at least to me, the most interesting thing to read about in this book. His early visions for computers, seeing the opportunities in early processors, and making the BASIC implementation for the Altair 8800 machine. A little depressing to read about the ownership situation of Microsoft and how that came to be, but Allen did not let that ruin his life in any way. I also got to know that Paul Allen and I had other things in common, like the many different interests and passions we have. During his life [[http://underthinkers.paulallen.com/][he produced a music album]] (where he wrote songs and played guitar), took an active investor role in many projects, owned sports clubs (football and basketball), started education projects, scientific endeavors like mapping the brain, traveling the world, philanthropy, and more. In my view he had a rich life in experiences, learning new things and getting new impulses! I got a new appreciation for him after reading this book as I dream of doing many of the same things (like releasing an album!). It is very sad to think about him struggling so much with cancer and dying young (65 is too young!)... Still, I hope you might get as much joy out of reading about the amazing things he did in his life as I did. diff --git a/org/_posts/2021-12-16-reactive_whats_the_big_deal.org b/org/_posts/2021-12-16-reactive_whats_the_big_deal.org index c6cb624a..6cac64cf 100644 --- a/org/_posts/2021-12-16-reactive_whats_the_big_deal.org +++ b/org/_posts/2021-12-16-reactive_whats_the_big_deal.org @@ -117,7 +117,7 @@ Hopefully you have now gotten the main points of what Reactive programming is ab #+END_EXPORT -If you program in Java or Kotlin, and would like to learn more about Reactive with Quarkus, I can recommend the book [[https://amzn.to/3MfLYHm][Reactive Systems in Java: Resilient, Event-Driven Architecture with Quarkus]] (Amazon affiliate link). +If you program in Java or Kotlin, and would like to learn more about Reactive with Quarkus, I can recommend the book [[https://amzn.to/47h1UDb][Reactive Systems in Java: Resilient, Event-Driven Architecture with Quarkus]] (Amazon affiliate link, so I earn commissions on qualified purchases). If none of the stuff above seems like the next step, I hope I at least have given you the language you need to find it. Remember that language is power, and knowing the terms above will definitely help you do more effective searches in the Reactive and event driven spaces. diff --git a/org/_posts/2022-01-17-data_intensive_applications_review.org b/org/_posts/2022-01-17-data_intensive_applications_review.org index 60bf4645..41b24b25 100644 --- a/org/_posts/2022-01-17-data_intensive_applications_review.org +++ b/org/_posts/2022-01-17-data_intensive_applications_review.org @@ -18,10 +18,10 @@ You may have seen the book Designing Data-Intensive Applications mentioned sever * What is it about? #+BEGIN_EXPORT html - + #+END_EXPORT -I shortened the name in the title, or else the complete one would probably be several lines(!!). The complete title is: [[https://amzn.to/3fVpfUT][Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems, and it is written by Martin Kleppmann]]. Quite a mouthful! Like the name implies, the book is a about designing applications where the way we handle data is the main challenge, NOT how compute intensive they are. The title describes it pretty well. Reliability, Scalability and Maintainability are key concepts. In short the books main goal is to guide you in the topic of data systems, especially the design of them at extreme scales (think Amazon/Google/Facebook/Microsoft and bigger companies). +I shortened the name in the title, or else the complete one would probably be several lines(!!). The complete title is: [[https://amzn.to/3DLkcPo][Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems, and it is written by Martin Kleppmann]]. Quite a mouthful! Like the name implies, the book is a about designing applications where the way we handle data is the main challenge, NOT how compute intensive they are. The title describes it pretty well. Reliability, Scalability and Maintainability are key concepts. In short the books main goal is to guide you in the topic of data systems, especially the design of them at extreme scales (think Amazon/Google/Facebook/Microsoft and bigger companies). The book is split into 3 parts: diff --git a/org/_posts/2022-02-12-more_scifi_books.org b/org/_posts/2022-02-12-more_scifi_books.org index ee01a207..69d0e5ab 100644 --- a/org/_posts/2022-02-12-more_scifi_books.org +++ b/org/_posts/2022-02-12-more_scifi_books.org @@ -16,7 +16,7 @@ There is probably no secret that I love science fiction books and dream of the m [[https://themkat.net/2021/09/26/scifi_books_to_unwind.html][Love science fiction? Take a look at the list I made last year that contains several classic books.]] -*NB! Amazon affiliate links below in the images, titles and more. Obliged to tell you.* +*NB! Amazon affiliate links below in the images, titles and more. This means I earn commissions on qualifying purchases.* #+BEGIN_EXPORT html
@@ -24,12 +24,12 @@ There is probably no secret that I love science fiction books and dream of the m #+END_EXPORT -* [[https://amzn.to/3T2Zi3U][Project Hail Mary by Andy Weir]] +* [[https://amzn.to/3OoUZPL][Project Hail Mary by Andy Weir]] #+BEGIN_EXPORT html - + #+END_EXPORT -Last month I finally got around to reading this gem! [[https://amzn.to/3T2Zi3U][Project Hail Mary]] follows astronaut Ryland Grace who wakes up in a spaceship without any memory of why he's there. It becomes clear that he is humanity's last hope for survival, and is far away from Earth. The mystery is unraveled by his memories coming to the surface. The book contains mystery, character development, friendship and more. It also has great twist and turns. This is a classic hard sci-fi story that gives a real sense of space exploration, and I was very pleasantly surprised by it. The mystery of what is happening is what makes it so great, so I don't think much should be spoiled here. +Last month I finally got around to reading this gem! [[https://amzn.to/3OoUZPL][Project Hail Mary]] follows astronaut Ryland Grace who wakes up in a spaceship without any memory of why he's there. It becomes clear that he is humanity's last hope for survival, and is far away from Earth. The mystery is unraveled by his memories coming to the surface. The book contains mystery, character development, friendship and more. It also has great twist and turns. This is a classic hard sci-fi story that gives a real sense of space exploration, and I was very pleasantly surprised by it. The mystery of what is happening is what makes it so great, so I don't think much should be spoiled here. Something that gave me lots of joy was to see (at least in my view) programming being used to solve a problem realistically! Many books have very weird ways of portraying programming and solving problems with computers. In general the technology seems plausible'ish, even though some parts of it is far from what we have available at the moment (relax, this is made clear very early in the book). @@ -42,9 +42,9 @@ The audio book (audible) is the recommended way to enjoy it, as the narration by
#+END_EXPORT -* [[https://amzn.to/3MjmuZN][Children of Time by Adrian Tchaikovsky]] +* [[https://amzn.to/3Qt4Jv0][Children of Time by Adrian Tchaikovsky]] #+BEGIN_EXPORT html - + #+END_EXPORT Children of Time follows two civilizations through thousands of years; humans traveling in their spaceship in cryo sleep, and a spider civilization evolving through that same time. The basic premise for this story is that a team of scientists wanting to colonize a planet of monkey servants planned to be released, evolving them through a nanovirus. This plan is sabotaged, and humanity seems end up at war that sets them back many years and destroys Earth. This leads to two things; a spaceship traveling to find a new suitable home, and the nanovirus being released without the monkeys being on the planet (evolving the spiders and other insectoid wildlife instead). @@ -61,7 +61,7 @@ It's been a long time since I read this book, but the concept and world building * Darth Bane trilogy (Star Wars) #+BEGIN_EXPORT html - + #+END_EXPORT *NOTE! It should be noted that this book is in the Legends continuity, and is not a part of the main Star Wars canon. It was written before Disney bought the rights to Star Wars.* @@ -73,9 +73,9 @@ During this story we again hear about places we have seen in other Star Wars lit The trilogy consists of these books: -- [[https://amzn.to/3V9aEW9][Path of Destruction]] -- [[https://amzn.to/3SURsde][Rule of Two]] -- [[https://amzn.to/3fVq0xd][Dynasty of Evil]] +- [[https://amzn.to/3rYgDTv][Path of Destruction]] +- [[https://amzn.to/3OJjskd][Rule of Two]] +- [[https://amzn.to/3OmKqge][Dynasty of Evil]] Another book that works perfectly as an audiobook! The sound effects, like lightsabers and spaceship sounds make it near perfect. It's always awkward sitting outside by yourself making lightsaber sounds while reading a book, so now you don't have to anymore :) (that was a joke...) diff --git a/org/_posts/2022-06-29-summer_learning_tips.org b/org/_posts/2022-06-29-summer_learning_tips.org index 7f58f65f..41a94d5d 100644 --- a/org/_posts/2022-06-29-summer_learning_tips.org +++ b/org/_posts/2022-06-29-summer_learning_tips.org @@ -14,7 +14,7 @@ Summer means that time off work are coming closer and closer for some of us! In If you want more relaxing summer reading, there are other blog posts you can check out. Maybe you want to read [[https://themkat.net/2021/11/27/biographies_about_tech.html][a biography about a person in the tech industry]]? Or maybe [[https://themkat.net/2022/02/12/more_scifi_books.html][science fiction is more your thing]]? There are many more recommendations in many different genres available [[https://themkat.net/tags/books.html][in the books-tag]], ranging from what was previously mentioned to personal finance. -*NB! Article contains Amazon affiliate links.* +*NB! Article contains Amazon affiliate links, which means I earn commissions on qualifying purchases..* #+BEGIN_EXPORT html @@ -25,7 +25,7 @@ If you want more relaxing summer reading, there are other blog posts you can che * Programming: Rust #+BEGIN_EXPORT html - + #+END_EXPORT I'm currently learning Rust myself, and aim to use it to replace C and C++ in many cases. At first glance, Rust seems a bit high level, but it is not really. You have to think of memory and how it is allocated a bit more than you would in higher level languages. This is done through the memory model centered around ownership. Through this model, the goal is to avoid many of the memory issues that are currently found in a lot of performance critical code written in C and C++ (including memory issues relating to concurrency!). There are even talk about [[https://hackaday.com/2022/05/17/things-are-getting-rusty-in-kernel-land/][the Linux kernel introducing some Rust code in the future]]. Sounds interesting? [[https://www.youtube.com/watch?v=5C_HPTJg5ek][Fireship has this 100 second intro to Rust that explains it better than I will]]! If you want a longer intro that introduces you to the language and explains how these issues are solved, then [[https://www.youtube.com/watch?v=A3AdN7U24iU][Carol Nichols has this awesome talk on how Rust is designed to be the language for the next 40 years]]. Rust also has many utilities you are familiar with in higher level languages like type inference, closures (like lambdas), higher order functions (map, filter, reduce etc.), generics and more! The combination of all of this makes the language very interesting in my view! It also uses LLVM, so expect great support for many different platforms. @@ -33,7 +33,7 @@ I'm currently learning Rust myself, and aim to use it to replace C and C++ in ma What resources are good for learning Rust? I can only speak for the ones I'm currently using, as I'm very new to Rust myself. -- *Book*: [[https://amzn.to/3SQ2Qab][The Rust Programming Language]]. This book covers Rust 2018, and gives a clear introduction. +- *Book*: [[https://amzn.to/3QsqHOz][The Rust Programming Language]]. This book covers Rust 2018, and gives a clear introduction. - *Interactive exercises*: [[https://github.com/rust-lang/rustlings/][Rustlings]]. Rustlings provide interactive exercies you solve directly by fixing issues or implementing parts of Rust code. So far so good! Not yet finished, but I think these exercises complement the book in a good way. They make it very easy to experiment with Rust before you get any cool project ideas yourself :) - *Finding Rust resources*: [[https://github.com/rust-unofficial/awesome-rust][Awesome Rust]]. This is a curated list of applications, guides, crates (Rust libraries) etc. - *Reading and experimenting with Rust code*: There are many Rust projects around. Some of my favorites include [[https://github.com/sharkdp/bat][the bat command line application]] (as well as the other applications from sharkdp on github), and [[https://github.com/datatrash/mos][mos]] (language server protocol and debug adapter protocol server for the MOS 6502 processor). There is also [[https://github.com/rust-console/gba][a crate for writing GameBoy Advance applications in Rust]] I think is really cool! @@ -67,13 +67,13 @@ No matter your skill level, you can also find useful information in "Awesome she * Retro computing: Wolfenstein 3D engine #+BEGIN_EXPORT html - + #+END_EXPORT This may be weird, but I have always been very fascinated with Id Software in their hayday. Games like Wolfenstein 3D, Doom and Quake provided great 3D FPS experiences that innovated the genre. Wizardry by John Carmack in the engines are part of that, and that is probably why he is one of my greatest heroes. While I could have selected any of the classic Id Software game engines, I think Wolfenstein 3D is a good place to start. While the 3D engines are more complex in later games, the Wolfenstein 3D engine has a lot of clever tricks with very simple "3D rendering" using simple 2D based techniques. If you need to refresh your math, primarily trigonometry knowledge, it is far easier starting here than in the later entries. -A few years ago, [[https://amzn.to/3fVMeze][Fabien Sanglard released a book detailing the Wolfenstein 3D engine]]. In it you will understand the hardware at the time, the ray casting rendering algorithm used, a bit of history and more! +A few years ago, [[https://amzn.to/3Krm8QM][Fabien Sanglard released a book detailing the Wolfenstein 3D engine]]. In it you will understand the hardware at the time, the ray casting rendering algorithm used, a bit of history and more! Resources to look into: @@ -82,4 +82,4 @@ Resources to look into: - Fabien Sanglard also have several articles on his blog that provide an interesting read! My favorite being [[https://fabiensanglard.net/fizzlefade/index.php][the walkthrough of the fizzle fade algorithm]]. There are also articles on [[https://fabiensanglard.net/Compile_Like_Its_1992/][compiling the source code the classic way]], and a quick discussion on [[https://fabiensanglard.net/wolf3d/index.php][Wolfenstein 3D for iPhone/iOS]]. -If history is more your thing, and you want to learn more about Id Software, then [[https://amzn.to/3RLAQ6g][the book Masters of Doom]] is recommended! +If history is more your thing, and you want to learn more about Id Software, then [[https://amzn.to/3Kt92T7][the book Masters of Doom]] is recommended! diff --git a/org/_posts/2022-10-11-learning_kotlin_resources.org b/org/_posts/2022-10-11-learning_kotlin_resources.org index 1719109b..cf21f53d 100644 --- a/org/_posts/2022-10-11-learning_kotlin_resources.org +++ b/org/_posts/2022-10-11-learning_kotlin_resources.org @@ -12,15 +12,15 @@ tags: programming kotlin books Do you want to learn Kotlin? Wonder what resources you should use to learn it? In this article I collect a few different resources depending on your interests and skill level. You might pick a few, mix and match or do whatever you want that makes you learn the concepts. Only you know the way you learn things the best. Without further ado, let us dive into the resources! -*NOTE! When I recommend books, I use Amazon Affiliate links.* +*NOTE! When I recommend books, I use Amazon Affiliate links. This means I will earn commissions for qualified purchases.* * Learning the basics No matter your skill level, you will at some point refer to [[https://kotlinlang.org/docs/getting-started.html][the official language documentation]]. For many of you, this will probably be the best place to start as well. All the examples can be run directly on the website, but you want to try your own code snippets interactively you can do it on [[https://play.kotlinlang.org/][play.kotlinlang.org]]. If you already know Java, they have [[https://play.kotlinlang.org/koans/overview][an interactive track called Koans]] that teach you the basics of Kotlin. This program help you get familiar with the syntax and workings of the language. There is probably two groups of people who end up reading this blog post; people new to programming in general, and people who know some programming and want to learn Kotlin. My recommendations are a bit different depending on which group you belong to. You may mix and match, but complete beginners will have a harder road with the resources aimed at people familiar with programming and/or the Java/JVM ecosystem. -- *Complete beginner*: If you are set on learning Kotlin as a beginner, I think I would start with the [[https://amzn.to/3COBGe0][Head First Kotlin book]]. It covers several programming concepts, and teaches you Kotlin from the ground up. It claims you should have some very basic scripting experience, but I think it is achievable with some effort (maybe supplement the official documentation above?). [[https://www.jetbrains.com/academy/][JetBrains Academy]] might be worth checking out, but I don't know too much about it. They describe their approach in [[https://www.youtube.com/watch?v=wBbYU7bcKHQ][this YouTube video]]. -- *Familiar with programming and/or the Java/JVM ecosystem:* The absolute BEST book on Kotlin in my view is [[https://amzn.to/3VeH41v][Programming Kotlin by Venkat Subramaniam]]! It goes through the basics, as well as some examples using Spring and also creating Android applications. Several often ignored parts of the Kotlin syntax is covered, and even I learned something new when reading it a few years ago (I had programmed in Kotlin for almost a year by that point). It requires that you know the basics of programming, and also assumes that you know about the Java ecosystem, but it is manageable in my view. I know someone who have read it and only knew some C programming, and they were able to start programming Kotlin after reading at least parts of the book! One exercise those of you who are more experienced may find useful is to refactor one of your Java applications to Kotlin. +- *Complete beginner*: If you are set on learning Kotlin as a beginner, I think I would start with the [[https://amzn.to/47jTYBa][Head First Kotlin book]]. It covers several programming concepts, and teaches you Kotlin from the ground up. It claims you should have some very basic scripting experience, but I think it is achievable with some effort (maybe supplement the official documentation above?). [[https://www.jetbrains.com/academy/][JetBrains Academy]] might be worth checking out, but I don't know too much about it. They describe their approach in [[https://www.youtube.com/watch?v=wBbYU7bcKHQ][this YouTube video]]. +- *Familiar with programming and/or the Java/JVM ecosystem:* The absolute BEST book on Kotlin in my view is [[https://amzn.to/3KrT2Rv][Programming Kotlin by Venkat Subramaniam]]! It goes through the basics, as well as some examples using Spring and also creating Android applications. Several often ignored parts of the Kotlin syntax is covered, and even I learned something new when reading it a few years ago (I had programmed in Kotlin for almost a year by that point). It requires that you know the basics of programming, and also assumes that you know about the Java ecosystem, but it is manageable in my view. I know someone who have read it and only knew some C programming, and they were able to start programming Kotlin after reading at least parts of the book! One exercise those of you who are more experienced may find useful is to refactor one of your Java applications to Kotlin. If you want to edit your files locally, you will also need an editor of some kind. Kotlin is created by JetBrains, the creators of IntelliJ IDEA. I would say that most people end up using [[https://www.jetbrains.com/idea/][IntelliJ IDEA]] for Kotlin, as they find it has the most complete tool support for the language. Other people, like myself, have a *very* strong preference for other editors like Emacs. On this blog you will find several articles about Kotlin in Emacs, [[https://themkat.net/2022/09/24/kotlin_in_emacs_redux.html][one recent]] and [[https://themkat.net/2021/11/03/kotlin_in_emacs.html][one older]]. The details mentioned in those articles can probably help you configure Kotlin IDE functionality in other editors, like Vim, as well. @@ -40,7 +40,7 @@ There are also some resources you can check out based upon other topics: - *Compiling to native code (iOS, Linux, Windows, etc.):* Want to interface with C libraries? Or make native applications for phones like iPhone? Then [[https://kotlinlang.org/docs/native-overview.html][Kotlin Native]] is probably for you. - *Multiplatform codebases*: This potentially combines the previous point with Android development, server side apps, frontend apps and more. [[https://kotlinlang.org/docs/native-overview.html][Multiplatform projects]] help you share code between several targets. This can help you make applications for Android and iOS, fullstack web apps and more! I'm not very familiar with this, but it seems interesting. - *Kotlin for scripting*: Want to replace clunky big bash scripts with Kotlin code? Or maybe you just prefer automating with Kotlin instead of Python or NodeJS? [[https://github.com/kscripting/kscript][KScript]] makes this easy! -- *Domain specific languages in Kotlin*: I mentioned Venkat Subramaniam earlier, and he have written [[https://amzn.to/3fSlTSp][a book about domain specific languages in Kotlin]]. Might be worth checking out if you find the concept of domain specific languages useful. There is also [[https://themkat.net/2020/08/27/kotlin_dsl.html][an article on this blog]] about that topic. +- *Domain specific languages in Kotlin*: I mentioned Venkat Subramaniam earlier, and he have written [[https://amzn.to/3OHl6CW][a book about domain specific languages in Kotlin]]. Might be worth checking out if you find the concept of domain specific languages useful. There is also [[https://themkat.net/2020/08/27/kotlin_dsl.html][an article on this blog]] about that topic. - *Kotlin syntax and features you may have forgotten?* There is [[https://themkat.net/2022/01/16/kotlin_often_forgotten_features.html][an article on this blog]] for that! diff --git a/org/_posts/2022-10-15-sed_more_than_replacements.org b/org/_posts/2022-10-15-sed_more_than_replacements.org index fd51c4ed..7e675ea3 100644 --- a/org/_posts/2022-10-15-sed_more_than_replacements.org +++ b/org/_posts/2022-10-15-sed_more_than_replacements.org @@ -85,7 +85,7 @@ sed can work with input piped into it, or you can supply a file as input. We wil -There is off course much more advanced things you can do by combining the various addressing, command line options and so on that sed provides. I recommend reading the man-pages to get information on all the options you have for using sed (i.e, run =man sed=). If you want more examples and explanations to dive deeper into sed (and text editing in scripts) after reading this article, I suggest reading the book [[https://amzn.to/3CZc3Y8][sed and awk: UNIX Power Tools]] (*Amazon affiliate link, so I will earn a commission on qualified purchases*). The book will also teach you awk, which is a small scripting language for editing text files, and might be a topic for a future article on this blog :) +There is off course much more advanced things you can do by combining the various addressing, command line options and so on that sed provides. I recommend reading the man-pages to get information on all the options you have for using sed (i.e, run =man sed=). If you want more examples and explanations to dive deeper into sed (and text editing in scripts) after reading this article, I suggest reading the book [[https://amzn.to/43UwvDS][sed and awk: UNIX Power Tools]] (*Amazon affiliate link, so I will earn a commission on qualified purchases*). The book will also teach you awk, which is a small scripting language for editing text files, and might be a topic for a future article on this blog :) * Simple replacements diff --git a/org/_posts/2022-10-31-what_i_love_about_rust.org b/org/_posts/2022-10-31-what_i_love_about_rust.org index 2e36e42c..a9df5aa8 100644 --- a/org/_posts/2022-10-31-what_i_love_about_rust.org +++ b/org/_posts/2022-10-31-what_i_love_about_rust.org @@ -165,7 +165,7 @@ rust-analyzer, the language server for Rust, is an official Rust project. The pe *NOTE! The book links are Amazon Affiliate links where I make a commission on qualified purchases.* -I think the best way to get started with Rust is to read [[https://amzn.to/3SQBOhV][The Rust Programming Language book]], and do [[https://github.com/rust-lang/rustlings][Rustlings]] exercises while reading it (interactive exercises!). The next steps will probably be to hack away at your own projects, open source code etc. If you still find Rust interesting, I can recommend [[https://amzn.to/3gVMUFg][Rust Brain Teasers]]. It is in the style of books like Java Puzzlers, where you are presented with edge cases and weird behavior and should guess what happens (i.e, if it compiles, what it prints etc.). +I think the best way to get started with Rust is to read [[https://amzn.to/3KurEm1][The Rust Programming Language book]], and do [[https://github.com/rust-lang/rustlings][Rustlings]] exercises while reading it (interactive exercises!). The next steps will probably be to hack away at your own projects, open source code etc. If you still find Rust interesting, I can recommend [[https://amzn.to/3qm4De8][Rust Brain Teasers]]. It is in the style of books like Java Puzzlers, where you are presented with edge cases and weird behavior and should guess what happens (i.e, if it compiles, what it prints etc.). -For those of you who may have read this article, and are familiar with Rust, you might want to go deeper. Maybe you want to know more about how everything works under the hood? More advanced concurrency and parallelism? Unsafe code? Other efficiency tricks, and things needed for embedded Rust? Then I can recommend [[https://amzn.to/3W8VH6K][Rust for Rustaceans]]. The author, Jon Gjengset, also have [[https://www.youtube.com/c/JonGjengset][a YouTube channel]] where he goes through intermediate Rust concepts (maybe there is some newbie friendly as well?). +For those of you who may have read this article, and are familiar with Rust, you might want to go deeper. Maybe you want to know more about how everything works under the hood? More advanced concurrency and parallelism? Unsafe code? Other efficiency tricks, and things needed for embedded Rust? Then I can recommend [[https://amzn.to/3qi2jEL][Rust for Rustaceans]]. The author, Jon Gjengset, also have [[https://www.youtube.com/c/JonGjengset][a YouTube channel]] where he goes through intermediate Rust concepts (maybe there is some newbie friendly as well?).