<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Kyle Walsh</title>
    <description>The latest articles on DEV Community by Kyle Walsh (@syntopikyle).</description>
    <link>https://dev.to/syntopikyle</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F74685%2Fe39c808c-7536-42df-8bc6-b13714971807.jpg</url>
      <title>DEV Community: Kyle Walsh</title>
      <link>https://dev.to/syntopikyle</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/syntopikyle"/>
    <language>en</language>
    <item>
      <title>Byte-Sized Book Review: Developer Hegemony</title>
      <dc:creator>Kyle Walsh</dc:creator>
      <pubDate>Thu, 30 Apr 2020 17:47:59 +0000</pubDate>
      <link>https://dev.to/syntopikyle/byte-sized-book-review-developer-hegemony-5ghf</link>
      <guid>https://dev.to/syntopikyle/byte-sized-book-review-developer-hegemony-5ghf</guid>
      <description>&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s----fyhu4B--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://d2sofvawe08yqg.cloudfront.net/developerhegemony/hero%3F1549460367" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s----fyhu4B--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://d2sofvawe08yqg.cloudfront.net/developerhegemony/hero%3F1549460367" alt="Developer Hegemony Cover Image"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h3&gt;Intro Stuff&lt;/h3&gt;

&lt;p&gt;I'm favoring speed over form with this new series, as I've read a lot of software books over the years and mostly want to give people the impetus (or not) to read a book from the perspective of someone who's been in the industry a while and had many ups and downs. I've wanted to do something like this for a while, but hadn't had that &lt;a href="https://thedeepdish.org/quake-books/"&gt;quake book&lt;/a&gt;-like effect that's knocked me out of my doldrums to actually start the reviewing process until &lt;a href="https://leanpub.com/developerhegemony"&gt;&lt;i&gt;Developer Hegemony: The Future of Labor&lt;/i&gt;&lt;/a&gt; by Erik Dietrich. It is such a thought-provoking, insightful, and I think &lt;b&gt;inspirational&lt;/b&gt; book that I want to give it a bump on this forum and thank Erik implicitly by writing this positive review :)&lt;/p&gt;

&lt;h3&gt;My Hot Take Review&lt;/h3&gt;

&lt;p&gt;It's rare that I get a software-related book that I not only love, but want to read as fast as possible and not skim at all. This book was literally a page-turner for me, and I read it over a three-day weekend recently.&lt;/p&gt;

&lt;p&gt;If you've ever worked in a corporate programming setting, especially for one of the larger software companies, and had certain aspects of that feel unsavory to you, then much of this book will resonate strongly with you.&lt;/p&gt;

&lt;p&gt;Additionally, if you've ever felt like your personality is just a bit askew of the "classic" software engineer stereotype (only loves code, meritocracy, high social anxiety, wants the world to boil down to binary), this book will resonate as the liberated "efficiencer" archetype will synthesize what you may have been hoping for in a "dream job/fit" situation for your personality...the catch being you have to make that job for yourself.&lt;/p&gt;

&lt;p&gt;Along the way, Dietrich describes how the corporate pyramid functions, its roots in the Industrial Revolution, the archetypes of people who work in this pyramid, and why he believes it's a failure and how you can succeed within that structure - if you so choose. All very cogent points and, though arguably cynical, very true to life. People who strongly identify with their perceived elevated status as software engineers, who may (knowingly or not) look down upon other forms of corporate "line-level" work, may be in for a rude awakening as he rips the veil off just how pedestrian software engineers really are relative to other vocations also judged by their output alone. Corporations may know to do some ego stroking along the way, but in the end you are what you output and you are a means to an end. A translation unit of business logic to code resulting in money. &lt;/p&gt;

&lt;p&gt;Just as his take is seeming most dire, he promotes the idea of breaking free from this, and embracing your ability to solve problems, understand business, and bring efficiency to whatever domain you're working in by going it alone (or with a pack of like-minded individuals) as what he calls an "efficiencer". This part is the most empowering, and if you've ever had the spark or inkling to "start your own thing", it'll get those juices flowing yet again.&lt;/p&gt;

&lt;h3&gt;Verdict&lt;/h3&gt;

&lt;p&gt;Read this book! I'd say, if you're a "big picture" developer like me, you would even enjoy reading it cover to cover versus a topical skim. So many things that have bothered me over the years, or that frustrated me, were captured and put to words very effectively, that reading it was almost cathartic. At the same time, the latter quarter of the book outlining a hopeful way to move the industry forward was a positive way to end the journey. Interviews in the appendix make for some helpful application of going the "efficiencer" route he details. I can't recommend it enough!&lt;/p&gt;

</description>
      <category>watercooler</category>
      <category>bookreviews</category>
      <category>career</category>
      <category>software</category>
    </item>
    <item>
      <title>My System For Ramping Up With "No Free Time"</title>
      <dc:creator>Kyle Walsh</dc:creator>
      <pubDate>Tue, 09 Jul 2019 15:45:04 +0000</pubDate>
      <link>https://dev.to/syntopikyle/my-system-for-ramping-up-with-no-free-time-47g6</link>
      <guid>https://dev.to/syntopikyle/my-system-for-ramping-up-with-no-free-time-47g6</guid>
      <description>&lt;h3&gt;Introduction&lt;/h3&gt;

&lt;p&gt;Learning new things, and then making effective use of that new knowledge, is key to our work as technologists! I used to haphazardly learn new things: either what was demanded of me from work, or just digging in on stuff I found interesting. Then I became a parent, and my free time went out the window! No longer could I just stay late at work, bail on friends, or pull an all-nighter to catch up. So, I married a few concepts from some really great books on reading, learning, problem solving, and habits. None of this is ground breaking, but sometimes hearing things in someone else's package and then going from there is what people need to make progress. It worked for me, maybe it can work for you!&lt;/p&gt;

&lt;h3&gt;Reading&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://www.amazon.com/How-Read-Book-Touchstone-ebook/dp/B004PYDAPE"&gt;How To Read A Book&lt;/a&gt; is probably my favorite non-fiction book. It's written with such a clarity and directness that I truly appreciate (probably a product of coming out of the 1940s), and really goes deep on a matter that many of us take for granted. Some of you may be thinking: &lt;em&gt;How To Read a Book? Uhh, just read!&lt;/em&gt; Seriously, give it some consideration. &lt;/p&gt;

&lt;p&gt;The author details four levels of reading (each step leverages/consumes the previous step as part of its approach):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Basic Reading - What we all already mostly do, start to finish, plodding along.&lt;/li&gt;
&lt;li&gt;Inspectional Reading - Scan the structure of the book - table of contents, index, references, etc- and skim the points of interest in a targeted fashion. Start thinking of what questions you'd ask the author if it were a live conversation.&lt;/li&gt;
&lt;li&gt;Analytical Reading - Now you're fully in conversation mode with the author. Writing detailed notes as you go of each section, answering your questions. Fully dissecting the book to its core. This is an active activity, not a spectator sport. Really consider the author, their biases and background, and whether you agree or disagree.&lt;/li&gt;
&lt;li&gt;Syntopical Reading - The final stage of reading. This is where you are effectively applying a bit of a Breadth-First Search to your personal research. This method means selecting multiple sources/books on the topic and comparing/contrasting their approaches, usually storing your combined and synthesized notes in a master notebook or commonplace book. Sometimes we need multiple takes on a topic before it cements. A modern-day interpretation of this would be reading a book's chapter on something, next a blog post, and then cross-referencing those with WikiPedia, YouTube, or Khan Academy.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Some steps in this may be "common sense" for you, but the deliberate and formalized approach will yield you more consistent results than if you do some steps of this inherently.&lt;/p&gt;

&lt;p&gt;A final note on reading and books: don't fall victim to the cost aversion of not reading an entire book cover-to-cover that you buy. A book is like taking a calculated bet on your life. You could read one thing in one chapter that changes your life or opens your mind in a way that is way more fruitful than the 10-20 bucks you spent on it. I've noticed that myself, and many peers in computing over the years, will give blog posts more leeway than books. Treat each chapter in book (or even subsection) as a more formalized, more rigidly constructed blog post, and take what you need.&lt;/p&gt;

&lt;h3&gt;Learning&lt;/h3&gt;

&lt;p&gt;Ok, cool. You extracted a bunch of data from a source, or sources, that spoke to you. Now you have to make it stick! &lt;a href="https://ncase.me/remember/"&gt;Spaced repetition&lt;/a&gt; is the key here. Regularly test your knowledge via recall. Make sure you can explain it to someone else, ala the Feynman Technique (if you can't explain it to someone in basic terms, you don't know it well enough yet). &lt;/p&gt;

&lt;p&gt;&lt;a href="https://www.amazon.com/Mind-Numbers-Science-Flunked-Algebra-ebook/dp/B00G3L19ZU/"&gt;A Mind For Numbers&lt;/a&gt;, or it's companion course on Coursera, &lt;a href="https://www.coursera.org/learn/learning-how-to-learn"&gt;Learning To Learn&lt;/a&gt; are great at cementing this approach. As you continually test and recall, the concepts will cement themselves. &lt;/p&gt;

&lt;p&gt;For applications to programming, this is where you want to write your test applications or clone applications mimicking the features you've learnt. Next-level would be a side project you're passionate about that leverages the newly-discovered concepts. For things that a little more esoteric, you can setup an Anki/Flash card deck to drill the high level concepts while also writing the code for a practical implementation.&lt;/p&gt;

&lt;h3&gt;Problem Solving&lt;/h3&gt;

&lt;p&gt;The best book on this, IMO, is G. Polya's &lt;a href="https://www.amazon.com/How-Solve-Aspect-Mathematical-Method-ebook/dp/B0073X0IOA/"&gt;How To Solve It&lt;/a&gt;. It's another classic, and it's the template for how to approach a problem in a very structured manner. It's very similar to applying the Scientific Method to problem solving. &lt;/p&gt;

&lt;p&gt;The basic gist of the Polya approach is:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Understand the Problem - know it fully and deeply. Restate it to others. Drill down until you have zero ambiguity in what you're trying to accomplish.&lt;/li&gt;
&lt;li&gt;Devise a Plan - Polya suggests many different ways to distill a problem down to a simpler problem, consider special cases, draw diagrams, etc. There's also an encyclopedia of problem solving strategies that follow after the problem solving template is detailed in the beginning of the book.&lt;/li&gt;
&lt;li&gt;Follow the Plan - pretty straight-forward, stick to your plan, and be deliberate&lt;/li&gt;
&lt;li&gt;Reflect on the plan - look back at what you did and note what worked and what didn't. If the problem still isn't solved, consider if you fully understood it or if you need to devise a new plan.&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;Habits&lt;/h3&gt;

&lt;p&gt;One of the quotes in Refactoring that I really liked was "I'm not trying to be a great programmer. I'm trying to be a good programmer with great habits".&lt;/p&gt;

&lt;p&gt;It's hard to be consistently great...and the reality is that many of us aren't going to be naturally great with little effort...but if we can build our habits such that doing things well becomes second nature, then the compounding effect of your habits over time will mean you're a solid, reliable, and effective software engineer wherever you work. A great book on habits that I geeked out over big-time was &lt;a href="https://jamesclear.com/atomic-habits"&gt;Atomic Habits&lt;/a&gt;. The author does a fantastic job of distilling the little changes you can make in your life and approach to thinks that are easy to implement and really start to compound. I can't recommend it enough!&lt;/p&gt;

&lt;h3&gt;Conclusion&lt;/h3&gt;

&lt;p&gt;So, maybe many of you already do some (or all) of the things I mentioned automatically as part of your implicit process. If you do, that's great! For me, I really had to formalize explicitly a way to execute learning new stuff as quickly as I could due to my outside responsibilities growing so much as a new parent. This template/approach should work for anyone who wants to get the most out of their time and get back to writing code and solving cool problems. Hope it helps! &lt;/p&gt;

</description>
      <category>learning</category>
      <category>research</category>
      <category>systems</category>
    </item>
  </channel>
</rss>
