Functional Programming, Simplified -- currently 5-star rated on Gumroad.com, 4.5-star rated on Amazon, and one of the all-time best-selling books on functional programming -- is currently on sale in three formats (prices shown in USD): PDF Format $10 on Gumroad Paperback Book $39.99 on Amazon Kindle eBook $9.99 on Amazon
NOV., 2022: My new book, Learn Functional Programming The Fast Way, is currently an Amazon Java and functional programming #1 new release. The book is now available in three formats: PDF Format $10 on Gumroad.com Paperback $30 on Amazon Kindle $10 on Amazon
I've been slowly working on a series of new Scala programming books, and today I'm proud to announce the first of these: Starting today you can buy the PDF version of Learn Scala 3 The Fast Way! for just ten dollars -- $10 (USD) -- at this Gumroad.com URL.
Since I've written two functional programming (FP) books, I thought it might help to provide a comparison of them. The short story is that both FP books have "limited technical jargon," and as shown, The Little FP Book essentially has one purpose, which is to help Java/Kotlin/OOP developers learn functional programming as fast as possible, using a technique that I "discovered" over the last few…
Some of the computer programming books on the right side of this image are amazing, and I would never discourage anyone from reading the great ones. But if you're an object-oriented programming (OOP) developer who wants to start understanding functional programming (FP) over a weekend or a few nights of reading, that's the goal of the new little book on the left: Learn Functional Programming The…
When you get started with functional programming (FP) a common question you'll have is, "What is an effect in functional programming?" You'll hear advanced functional programmers use the words effects and effectful, but it can be hard to find a definition of what these terms mean. Effects are related to monads (but don't worry) A first step in the process of understanding effects is to say that…
April, 2024 Update: This ZIO cheatsheet is currently being updated to ZIO 2.x, but it's still a work in progress. If you want a good cheat sheet right now, see this one on github. I'm creating my own as I learn ZIO and read the ZIOnomicon book. During the learning process I find that it's much better to create your own by hand, that way you get something that's meaningful to you. Note that almost…
From this article on how "Breath-based meditation shifts the brain into a deeply relaxed state": "We found that rhythmic breathing practice like Sudarshan Kriya Yoga allows an easier access to a deep state of meditation," Tripathi told PsyPost. "EEG from participants were recorded before, during and after they were practicing the technique. EEG records brain activity which can be quantified into…
One thing you learn when you really become dedicated to mindfulness practice is that every moment you aren't being mindful, you're feeding your ego. Any thought about the past or future solidifies this "ego-cage" you have built up in your mind. (Note: I saw the term ego-cage in a book, but I don't remember which one.)
Another good interview question of late was something like, "Who are some of your heroes, or people who have motivated you?" I forgot to mention Bernie Glassman, from whom I learned that you don't have to go off and meditate in the mountains to become enlightened. You can learn more about him here on Wikipedia if you're interested. And here's a link to The Dude and the Zen Master on Amazon.
As I work more with ZIO 2, I also find myself thinking a lot about the ZIO 2 mental model, by which I partially mean "a way of thinking about your code" and also "ZIO 2 best practices." Here are my initial notes. Also, I hope that most of this code is mine, but several snippets are from other sources that I don't remember, including the official ZIO 2 docs.
This page provides a comprehensive overview of error-handling strategies in ZIO 2. My hope is that you can use this decision tree to determine good/best approaches for handling errors in your ZIO effects. Each section includes a use case (question/answer), brief explanation, and ZIO 2 example. As a brief note, I have ensured that the following examples compile, but at some point I need to take the…
I haven't interviewed for a job in many years, and yesterday I had my first interview in 14 years. I thought I could just pick up where I left off many years ago without any practice, but boy was I wrong. I *did* want to talk about my health saga from 2012-2019 because it's an important part of who I am today, but I talked about it too much. All I wanted to say was that (a) I got very sick and…
This is a list of some of the applications I (Alvin Alexander) have written. I've included links to places where you can find more information about each app or application. Just Be Just Be is a mindfulness reminder application for Android. Being an Android app, I wrote it in Java. You can learn more about it at JustBe.cc.
AppleScript FAQ: Can you share some iTunes/Music AppleScript examples (example scripts)? As I've been working a lot with macOS speech recognition software lately, AppleScript has once again become important in my life. I've been writing a lot of small AppleScript scripts -- including AppleScript iTunes scripts -- and I thought I'd share snippets of code from those iTunes scripts here for anyone…
Mac startup/login programs FAQ: How do I set up a Mac application to automatically start up when I log in? If you have a normal Mac application that you want to setup as a Mac startup program -- also called a Mac "startup item" -- the process is fairly simple, and I'll demonstrate the approach in this article. For other Mac applications, like a command line program, the approach is different, and…