|  | Hello,
Dear friend of FullStack Bulletin, I've carefully chosen each piece of content in this issue because they have the power to spark new ideas, reignite your passion for coding, or offer a fresh take on familiar challenges - from mastering regular expressions (because, yes, those two problems can still haunt us) to creating efficient strings in Rust. Will one of these articles finally help you break free from the curse of vertical DIV centering? Only time will tell. But what I do know is that they're all here to inspire and challenge you, so take a few minutes to explore what's inside... Have fun!
— Your editor, Luciano | “I think that novels that leave out technology misrepresent life as badly as Victorians misrepresented life by leaving out sex“ — Kurt Vonnegut , Author | 
| CSS finally adds vertical centering in 2024 — If you've ever sweated bullets during a job interview, nervously fumbling for the right CSS magic to center a <div> vertically - fear no more! We're excited to share with you the long-awaited solution that's finally here. In this article, we'll dive into the history of vertical centering techniques and show you how to use the new and improved rule in just one simple line of code. Read article | Free Public APIs — This incredible collection of over 200 free public APIs is the ultimate resource for anyone looking to fuel their next experiment. Not only does it provide easy access to these APIs, but it also takes the guesswork out of testing them. With daily checks and rigorous categorization, you can trust that every API on this list is accurate and ready to use - saving you precious time and effort in your development journey. Read article | Small strings in Rust — If you're interested in fine-tuning your code for maximum performance or just enjoy working with Rust, this article is worth a read. It explores some interesting techniques and libraries to store strings in a memory-efficient way and improve performance. I found it to be a fascinating look at the trade-offs involved in optimizing string storage, and you might too. Read article | How To Create An NPM Package — Matt Pocock has written an excellent article on publishing high-quality JavaScript packages to NPM. If you're planning to share your code with the world through NPM, you should definitely check out Matt's comprehensive guide. He covers everything from best practices for writing maintainable and efficient code, to setting up dual-mode support for both CommonJS and ESM, and even provides guidance on testing, linting, and automating the build process. It's one of the most thorough resources I've seen on this topic, and it's definitely worth reading if you're new to publishing packages or just want to improve your existing workflow. Read article | Implementing React from scratch — If you're curious about how React works under the hood, this article offers a unique perspective on its internal mechanics. By building a simplified version of React from scratch, you'll gain hands-on insight into the fundamental principles that drive its behavior. As physicist Richard Feynman once said, "What I cannot create, I do not understand." This mindset is exactly what drives the author's approach in this article - by trying to recreate React's core features, they aim to develop a deeper understanding of its inner workings.  Read article | The History And Future Of Regular Expressions In JavaScript — Regular expressions have come a long way since their early days as clunky, error-prone beasts. As Jamie Zawinski once joked, using regular expressions can sometimes create two problems instead of solving one - but for the right situations, they're an incredibly powerful tool. Steven Levithan's article takes us on a journey through the history and evolution of regular expressions in JavaScript, highlighting their recent improvements and emerging trends that will shape their future. If you're curious about how regexes have transformed over time and want to gain a deeper understanding of these complex tools, this article is a great resource for anyone who wants to use them effectively when they really need to. Read article | Algorithms we develop software by — A tech CEO and engineer shares his unconventional approach to solving complex problems in software development - starting each day from scratch on a feature, deleting it all if he doesn't finish by nightfall (except for unit tests). This method is just one of several creative heuristics discussed, including writing everything twice and challenging oneself with an unrealistically tight deadline ("the gun to the head" technique), which can help break anchors and biases, leading to new insights and better solutions. The article offers a unique perspective on how to become a more effective problem-solver as an engineer. Read article | | The Self-Taught Computer Scientist: The Beginner's Guide to Data Structures & Algorithmsby Cory Althoff | 
| The follow-up to Cory Althoff's bestselling The Self-Taught Programmer, which inspired hundreds of thousands of professionals to learn to program outside of school! Fresh out of college and with just a year of self-study behind him, Cory Althoff was offered a dream first job as a software engineer for a well-known tech company, but he quickly found himself overwhelmed by the amount of things he needed to know, but hadn't learned yet. This experience combined with his personal journey learning to program inspired his widely praised guide, The Self-Taught Programmer. Now Cory's back with another guide for the self-taught community of learners focusing on the foundations of computer science. The Self-Taught Computer Scientist introduces beginner and self-taught programmers to computer science fundamentals that are essential for success in programming and software engineering fields. Computer science is a massive subject that could cover an entire lifetime of learning. This book does not aim to cover everything you would learn about if you went to school to get a computer science degree. Instead, Cory's goal is to give you an introduction to some of the most important concepts in computer science that apply to a programming career. With a focus on data structures and algorithms, The Self-Taught Computer Scientist helps you fill gaps in your knowledge, prepare for a technical interview, feel knowledgeable and confident on the job, and ultimately, become a better programmer. - Learn different algorithms including linear and binary search and test your knowledge with feedback loops
- Understand what a data structure is and study arrays, linked lists, stacks, queues, hash tables, binary trees, binary heaps, and graphs
- Prepare for technical interviews and feel comfortable working with more experienced colleagues
- Discover additional resources and tools to expand your skillset and continue your learning journey It's as simple as this: You have to study computer science if you want to become a successful programmer, and if you don't understand computer science, you won't get hired. Ready for a career in programming, coding, or software engineering and willing to embrace an "always be learning" mindset? The Self-Taught Computer Scientist is for you.
| | Here's something else you might like! 🤩 | 👋 That’s all for this week. See you next Monday! Greetings from your full stack friends Luciano & Andrea | | If you enjoy FullStack Bulletin, consider sharing this newsletter with your friends and colleagues.
If there's something we can improve, let us know!
You can also sponsor the next issue! |
|
|
|
|
|
| | |
|
|
|
|
|