I was the sole editor and contributor of new content for Ubuntu Linux Unleashed 2021 Edition. This is the 14th edition of this book and is intended for intermediate to advanced users.
I’m writing this post during the COVID-19 era. Officially, society is starting to open up. Unofficially, I think we are about to cause a second, larger wave of viral spreading. Anyway, with my chronic illnesses, I’m staying locked down. As I spend my fiftieth birthday in near-isolation (my older kids aren’t with me –EDIT: they surprised me by visiting!!–, but my wife and youngest kid are) I decided to share some thoughts that lead me here.
Ten years ago I wrote a post about turning 40. Here’s a follow up. This time, instead of sharing specific random things I’ve learned, I am going to share my journey through time, growing into who I am now.
This is long and I don’t know if this is as interesting to others as the post a decade ago, but I think at least some of this is worth chronicling.
Infancy and Childhood
Not much I want to say, except that I had allergies from infancy (seriously, I could only be fed rice and lamb for the first year and a half of my life). I was adopted, so breast feeding wasn’t an option. Also, I’ve always had bendy joints and could do weird tricks because of them.
We moved. A lot. The longest I lived in one place was four years.
We continued to move frequently. I attended four different high schools across four cities in two states.
I struggled to fit in. Almost anywhere. Adults liked me, but I didn’t connect to most of my peers. I had a few good friends, but just a handful. That was enough, though, as the friends I had were great.
Through this experience I began to learn the art of diplomacy, speaking to others in their language and style and adjusting how I expressed ideas depending on the audience. Moving as much as I did forced me to learn how to communicate in a new context. Being an only child did as well.
Trying to figure out what I believed about anything was hard. I could see all sides of issues and ideas. That frustrated most people. Religion was difficult, but I tried really hard to follow the one I was raised in, reading all the books and listening to all the speakers I could.
I started experiencing severe pain in my joints. Doctors said, “It’s just growing pains. Here’s some ibuprofen.” It didn’t help. They had no other ideas.
I got my first computer at 11. I started playing guitar when I was 19. I’ve played video games for 42 years as of the time of this post. I first used a mainframe computer when I was 17. My classmates and I, who were studying LISP and supposed to be working on programs, spent too much time playing Rogue.
I found a group of people who treated me with love, respect, and acceptance. That felt good. I learned from them and shared what I had learned.
Religion became more important to me as I learned more and more. The good things shaped me. Questions about many aspects were ignored or set aside as I couldn’t find answers.
The allergies that I had struggled with since infancy continued to impact me and I added new meds. This is when I first began to experience chronic fatigue as well. I saw specialists for chronic pain and was diagnosed with benign joint hypermobility syndrome and told to “suck it up, here’s some ibuprofen.”
I bought my first electric guitar at 20. I started buying broken tube-driven guitar amplifiers in my mid 20s and fixing them. I built my own tube amp at 27.
I did a lot of computer stuff for fun as a hobby. I started writing regularly for multiple audiences. I had dial-up internet access that connected me to a bash shell from which I could check email, browse Gopher, and read Usenet in my early to mid 20s.
I sold nearly everything and moved to Morocco (that’s a long story that is better in person–ask me face to face and I’ll tell it). I lived there seven years. This time honed and shaped my ability to communicate to and connect with anyone, across multiple languages. My three oldest and gene-sharing children were born there. Part of why we moved back was because they were reaching school age.
I moved back to the USA, to Arizona where I grew up. The schools were (still are) grossly underfunded and poorly supported so even great teachers struggle to be effective. That was hard to see and disappointing.
During this time I met a lot of people from different faith traditions. Some were different forms of the religion I grew up in and I learned much from them, including some acceptable and helpful answers to some of my questions. I also started to really get to know people of other faiths. That had a big impact. Before my 30s were over I had left the religion I grew up in. I didn’t lose my faith, but my faith had grown in ways that didn’t allow me to fit there anymore.
My health. Urgh. No positive changes. Doctors tried to help with symptom control, but didn’t understand the causes of my problems, so solving them or helping ease their impact was impossible most of the time.
I played guitar less, mostly because I was busy with work, three small kids and a wife, and trying to learn Arabic well. I did well with those other things, though, at least most of the time.
I did a lot of computer stuff. I first got Ubuntu Linux to install on my laptop in April 2005, when I was 35. It wasn’t the first time I’d used Linux or a UNIX variant, but it was the first time I experienced success installing any form on equipment I owned.
I got my first official tech writing jobs, both freelance and full-time, near the end of my 30s.
Libraries are a long-standing love of mine. One of my first jobs in my early 20s while an undergrad was in a library. I noticed that the profession was moving to more of an information science focus, with libraries as a big part of that. I really wanted to learn more about the info side, so I got a master’s degree in “information resources and library science.” No regrets! I wrote three books at the same time. That was insane and I won’t pack so many projects into the same time frame again.
I moved my family to Iowa. The schools are better funded (but not perfectly) and the teachers have a better chance to have positive impacts across a wider set of kids.
I continued as a tech writer and decided this is the career I want: writing for a living, especially about technology.
I enjoyed using computers and exploring new IT technology daily.
I began feeling light headed all the time. I saw lots of specialists from multiple disciplines. Like with my chronic pain, none could find the cause.
I found and met my birth mother. My adoptive parents are the names on my birth certificate, but they told me in a loving way very early on that I was adopted. I feel like I always knew. I never was interested in learning about or meeting my birth parents, until one day in my mid 40s. Meeting her was life-changing in good ways. I met my full-blood sister shortly after. I met lots of genetic family and am in contact with lots of them. This has been wonderful, except that my birth mother died too soon after I met her.
I was divorced after 22 years of marriage. That sucked. I got help from multiple counselors and friends. I feel most sorry for my oldest three kids (they were my only kids at the time). It has been hardest on them, I think.
I spent several months being alone, resting more than I ever have, and even working out regularly. It helped with the lightheadedness, but wasn’t a cure. This was the first time in my life that I lived alone since my early 20s. I had enough energy to take care of myself and felt pretty good. Even so, I decided I would rather use my energy with others around, even if it meant I didn’t have as good of control over my chronic health problems.
I met someone new and married her. Her son is now added to my brood, making it four kids in total.
I started a YouTube channel where I play guitar and sing, because I wanted to learn to sing. Guitar playing is not the star here, and honestly, I don’t play as well as I used to most of the time because the joints in my hand seem to be more hypermobile than they used to be and so it hurts. From the beginning, some videos have been good and some not-so-good. It’s been more than five years and I can see significant progress, but still have some clunkers as I try to push my boundaries.
A long-time online friend mentioned that there have been changes in diagnostic criteria and added diagnoses related to my joints and chronic pain. I decided to follow up. One more specialist later, I was diagnosed with Ehler-Danlos Syndrome (EDS).
Studying and learning about EDS connected every single one of my lifelong chronic health issues. With some prompting from me, I got referrals to other specialists to confirm my suspicions that I had a few common comorbidities.
It turns out that I also have postural orthostatic tachycardia syndrome (POTS) and mast cell activation syndrome (MCAS), which is a really new diagnosis and field of research. I see an Immunology specialist at the university for MCAS, because no one else knows much about it.
That set of diagnoses covers everything from hypermobility to chronic pain to chronic fatigue to allergies to lightheadedness and a few things I haven’t mentioned. It all makes sense, which is a relief even if there is no cure. Also, they had better ideas on how to treat some symptoms. I decided to start reading medical journals on the illnesses and convinced doctors to try some treatments being tested, and those have helped as well.
Life with chronic illness is improving, even if not always easy. Oddly enough, people with EDS tend to look younger than they are while feeling older than they are. Both fit me. I’m also not hiding my illnesses anymore, which is a relief.
My oldest kid turned 18 and graduated from high school not long before I turned 50. I feel proud.
So many changes. I ended the decade a different person. I still hold to the values in the “Turning 40” post, but they were tested, tried, and pushed.
My Fifties (where I’m starting today)
I am content with who I am. I am at peace. That wasn’t true at the start of any decade of my life, except the first one.
I’ve learned that what others think of me is really none of my business and it has lifted a huge burden of trying to please others. I’m trying instead to live in a way where I feel good about who I am when I look in the mirror.
I know what I believe and value in life. I have religious beliefs that are comforting and encouraging, and have learned to embrace some mysteries and laugh at some things that used to puzzle and perplex me. My internal life is simpler and filled with contentment most of the time.
I’m still a Christian, but with a ton of influence from Zen Buddhism and Sufism and other things that have helped me considerably. A local Episcopal Church is my home and filled with kind and accepting people who also consider Christianity their path while welcoming anyone that guides toward God, love, and peace. That feels right, but some people in the group I grew up in would say I’ve fallen away. I’m fine with that.
My career has developed beautifully and I’m happy with it. I love the company I work for now and hope to stay there until I retire someday years from now.
My health is what it is, but so many mysteries about what’s going on have been solved. That brings more peace than I expected. The peace is greater than the frustration over the lack of a cure. Today’s treatments are helping me more than anything I’ve had in the past and I’m feeling better than ever, even on my bad days.
I don’t know what’s next, but I’ve started to stop regretting the past and worrying over the future and trying to embrace the present. It is the path I intend to follow the best I can. Mindfulness is helpful. Learning to let go of “Will I feel good enough to participate in this scheduled event?” fears about tomorrow and scheduling disappointments where people are mad because I won’t/can’t commit to something has been a boon to my mental health and welfare.
I’m good enough. I’m content. I’m embracing the mystery of today.
Engineers and IT people don’t have the opportunities we were expecting this spring to meet up, share knowledge and ideas, and talk about building reliable production systems. This is not our fault, but due to circumstances beyond our control.
When the unexpected happens, if you are prepared, your failover schemes kick in. Gremlin (the Chaos Engineering and reliability company) came up with a great way for people expecting to cross-pollinate and/or present to do so virtually. Presenting: Failover Conf.
It’s worth a few minutes of your time to check it out. The conference is fully online and free for attendees. And, check out that list of sponsors at the bottom of the page!
Disclosure: I work for Gremlin. Don’t let that keep you from checking it out; I would share this one regardless.
The game is rigged. We all know it. So what?
The art is learning how to navigate within the structure for your own benefit. All it takes is a change in your perspective.
Care about others a little bit less; care about yourself a little bit more.
Selfishness rules the world. Dog eat dog and all that rot. It is kill or be killed; take or be taken.
I get out of bed and stumble toward the kitchen.
How can I face another day of constant warfare? I need coffee. Food. Maybe something stronger.
I glance at the stove and the sink and am reminded of tasks not done. Blurgh, no clean dishes, no clean pans. No eggs for me.
I hear my alarm. What was it I was supposed to be doing? Oh, yeah. A heavy sigh pushes my body a little closer to the floor. I trudge to the bathroom for a quick brush of the teeth and hair. Time to head out.
I exit the flat. The dingy hallway closes in on me. I am reminded again of my status. Dog eat dog; I chant my new mantra, trying to convince myself. I must get out of here. This life is killing me.
I see the sign on the elevator. Out of order. Again. It has worked exactly two days in the last month. I stumble down six flights of stairs.
The lobby lights are dim. Only one working bulb in the entire room. The trash by the mailboxes remains from last week. Not my responsibility. I try to convince myself. I cleaned up the lobby every week this year. I am starting over. Time for some other dog to be devoured. I’m done.
I exit the building. The streets are dark. I hate having to leave so early. The bus will arrive at my stop soon. Only two bus changes today. That is better than my old place, but it still takes too long to get to work.
Brr. Dirty snow consumes the sidewalk, except on the narrow path created by my neighbors’ feet. No one shovels in the slums. No one cares. No one issues citations. The law doesn’t apply here, unless they want to crush someone.
Six blocks go by. Only one more and I will reach the bus stop. No building here to block the wind. A shiver overtakes me. I need a new coat. Sigh. I need to make rent.
I check my phone: 6:00 am. The bus should arrive in 5 minutes. I look around. No one else is here. That is odd. I check the posted schedule. Unchanged. Is it a holiday? No. WTF.
6:05. No bus. 6:10. I will miss my connections. Still no one else at the stop. Finally, someone strolls by. Do you know what is going on? Bus strike today?! I can’t afford a taxi. I don’t have a car. No one is able to give me a ride. No work today. Pay rent or buy food? The game is rigged.
How did calculus come to be? Why? Who was involved? What does this have to do with pineapples (page 84)? These and other questions are integral to this book, which is not derivative of any other I have read. Okay, enough puns. Let’s get to the facts.
The Cartoon Introduction to Calculus is my favorite calculus book ever. Written by Grady Klein and Yoran Bauman, Ph.D., the book is informative, interesting, and insanely funny. That is not an easy task considering the subject matter. I got a C in calculus as a university freshman, and although I understand the topic better today, I really wish this book had existed at the time.
All the important topics are covered. The reader begins by being introduced to the history of calculus with both Leibniz and Newton and the questions they were exploring that lead each to “invent” or “discover” (pick your own side, I’m not taking one) the mathematics involved. We learn about The Fundamental Theorem of Calculus, limits, derivatives, how this is useful in applications like economics, all the way to integrals and how they are used in physics. I sincerely wish the practical applications had been made this clear to me when I first encountered the subject!
There are other books out there that do a pretty good job of presenting this material clearly and well, such as one I reviewed ten years ago. What makes this book stand out is the writing and illustration. It is funny, and that is disarming. Bauman, who is billed as “The World’s First and Only Stand-Up Economist” and Klein, a previous work of whose I reviewed six years ago, pair up to write an easy-to-read, interesting, laughter-producing, intelligent guide to a tough topic for many. I’m impressed.
How do you make decisions? Do you know? Some of us use market norms while some use social norms. These and other topics are covered in today’s review.
Amazing Decisions: The Illustrated guide to Improving Business Deals and Family Meals by Dan Ariely and illustrated by Matt R. Trower aims to help readers learn to consider the reasons why some decisions are better than others.
To achieve the book’s goals of explaining how social sciences and behavioral economics overlap and differ we are presented with a narrative. The narrator, Adam, faces a continuous and confusing set of choices he must make. How will he decide which option to choose in each of these moments? Assisting the narrative are colorful and well-done illustrations.
The author submits that decision making is often a subconscious balancing act between competing norms. We have economics to consider. We also have what is acceptable or appropriate in society. It is not always obvious how to balance these two.
To help explain how we deal with them in Western society, Ariely gives Adam two fairies, the market fairy and the social fairy. Good decision making often requires us to identify and evaluate the forces at work around us, and these characters help Adam do just that. In the process, we as readers are given some thoughts and skills to consider and adapt.
Anyone with a weakness in either of these two departments, economics or social sciences, will benefit from this book, along with anyone with strengths but who aren’t sure how to balance the two perspectives. I am especially looking forward to seeing the reaction of my Autistic son and how the book may influence him when he reads it.
On July 20, 1969, humans first walked on the moon. It was an amazing achievement, even by today’s standards 50 years later.
Moonbound: Apollo 11 and the Dream of Spaceflight is not the first book by Jonathan Fetter-Vorm that I have reviewed. In fact I have reviewed two others previously. As with each of those, this book is well-researched, historically valuable, and filled with illustrations that enhance the text.
In this book, we learn the history of the moon landing, starting years back with the beginnings of astronomy and studies and beliefs about the moon, through early rocket science and the war years, all the way to the successful Apollo 11 landing and safe return home.
The story is told using multiple voices, which I especially appreciate. While the Apollo project history is frequently shown and told through the voice of participants, such as famous astronauts, there is also a narrator for historic contextual moments and scenes. Moving the story along through a series of vignettes and flashbacks is both interesting and also allows important background knowledge to be brought in at just the right moment for it to have its greatest impact.
As with all of his work that I have reviewed, Fetter-Vorm’s artwork is splendid, appropriate to the moment, and beneficial. I especially liked the way he moves between color and grey scale images for impact when showing scenes of “present moments” passing through the Apollo 11 developments and contextual history.
This is one worth picking up for anyone even slightly interested in space.
I have an eight year old who knows more about the solar system than most adults I know. He is fascinated by stars, planets, asteroids, comets, and anything else you can think of in space. How cool that I was able to give him this book.
Astronomy for Kids: How to Explore Outer Space with Binoculars, a Telescope, or Just Your Eyes! is a wonderfully laid out, fascinating, and intellectually stimulating introduction to becoming an astronomer, whether amateur or eventually a professional. The stated (and in my opinion achieved) goal is to help kids find and name objects in the night sky while teaching cool and fun facts about them.
The book starts with useful basics like “don’t look at the sun” and why some objects are only visible during a certain time of the year or from a specific hemisphere. From there we move to going outside at various times of the year and finding constellations and other objects with just the naked eye. Then, with binoculars. Next, using a telescope. The book is filled with clear and colorful illustrations and diagrams making it very easy for any reader to understand what is being described in the text and what they are looking for in the sky.
My eight year old is really enjoying this book and I’m sure your kids will, too.
This “Manga Guide to…” series is fantastic. This is another solid entry worthy of your time and attention, provided the subject matter is of interest for any reason. While none of the entries in the series could or is intended to replace a textbook, they are all fantastic supplementary materials to any study of the academic topics covered.
The Manga Guide to Cryptography tackles all of the main points you would expect of an academic introduction to the topic. It does so with clarity, with precision, and surrounds the academic details with an enjoyable narrative that makes the information much easier to absorb. In fact, I would go so far as to say the story makes the subject matter move from difficult, but interesting, to enjoyable. This is done by giving a context to the subject matter that the reader can relate to.
Ruka Maguro is the younger sister of Jun Meguro, who is a police inspector. She tags along with him as he investigates a case of art theft from a supposedly secure museum. As information security is discussed during the investigation they are joined by Rio Yoneda, a news reporter, who points out the flaws in the first cryptographic cipher being used to protect the location of the now-stolen masterpiece. This is all in the first five pages.
From here, the story develops (I won’t spoil the plot any further). Along the way, the book covers the foundations of encryption and classic ciphers, various algorithms such as symmetric-key and public-key and multiple implementations and details for each, and finally a number of practical applications of encryption. The book will not teach you how to become an elite hacker (1337 hax0r, either), but will give you a solid introduction to a wide breadth of foundation information in the topic. It does so with enough clarity and precision to help you understand what the various ciphers, algorithms, and implementations are and how they are currently or previously used along with enough understanding to help you do further research on any that interest you deeply.
This book won’t replace a textbook and doing your homework, but it has a very strong chance of helping you overcome the fear and intimidation that are often associated with these complex topics. Like the other titles in this series, I recommend this book highly.
It seems that the publisher now prevents hotlinking of images. I don’t blame them, but that is why there is only one link to the book (in my first reference to the title) and not two (one from an image of the cover).
Disclosure: I was given my copy of this book by the publisher as a review copy.
Cracking Codes with Python: An Introduction to Building and Breaking Ciphers has two goals. The book aims to teach the novice how to program in Python while also providing a good foundation in ciphers, encryption, and cryptography.
There is nothing in the book that will help the reader replace the excellent open source implementations currently available. That is not the goal. Rather, the reader has a chance to learn the foundations underlying classic and modern attempts to secure communication between parties.
The classics are all here, from simple reverse cipher and transposition all the way through to one-time pad ciphers and public key ciphers. The book starts simply from both a programming and a code perspective, gradually adding complexity while explaining first how a cipher works, then how it is coded, then what its weaknesses are and why you would want to move on to something better.
If learning Python while studying basic cryptography is of interest, you will find this book useful and well worth your time.