Softinio's Notes on Software Engineering - Issue 1
Welcome to the very first edition of my newsletter.
Thoughts on options for writing and publishing technical blogs?
With every edition of my newsletter I would like to bring up one discussion point that I would like to share my thoughts on and discuss and get feedback by way of comments from my readers.
I read a lot of technical blogs and books and over the years have become familiar with most of the options used by various authors. One pattern that I have noticed is some platforms become hip for a period of time, then fall out of favor which results in the authors writings having either less traffic or them having to move their blogs.
As a result, what I think is best is to own your content and the platform it’s on as the source of truth that never changes. By all means, other platforms can be used to give your writings a wider audience.
For my blog I use Hugo, which enables me to write my blog using markdown. I publish it on AWS s3 via GitHub. Of course, there are other options open to you for hosting your own content, including even using Wordpress.
What about medium.com
I see a lot of technical authors use medium.com to publish. They make it easy to get up and running with writing and immediately you have an audience. Don’t fall for this though, easy is not always the best option.
They fall under the category of hip today, not necessarily still hip tomorrow (look at Tumblr and blogger for examples).
Also, as a reader, I find their user experience pretty poor, mainly caused by their paywall system to the point that I have stopped using them all together and have removed all apps. This is a shame, as I am missing out on some authors publications that only post there. Their paywall system exists to be ad free and to help authors make some money from their publications, but quite honestly for the normal average author and reader it doesn’t work. The amount an author will earn from a readers subscription is nominal in my opinion for most authors. It can only mount to anything worth talking about, if you have a global following like a celebrity or a politician. As a result their subscription doesn’t present enough value to the reader in my opinion.
However, on a positive note, they do support canonical urls. If you post the same blog on more than one site you will be penalized by search engines such as google. However by supporting canonical urls (a url that points to the original posting of your article) you won’t be penalized. This is great as it means you can have you posts elsewhere on a platform that you own, but then have a copy of it on medium for the audience. They even make it easy for you to import your post from your site to medium for this purpose and automatically adding the canonical url for you. Their import functionality is quirky though I have never been able to just import and publish, it always has issues that end up requiring manual editing for me and hence due to lack of time I haven’t used this functionality yet.
What about substack.com
I always wanted to have a newsletter and/or have a means of informing the readers of my blog that I have something new posted, however I never took the plunge as I didn’t want to be responsible for managing users info myself and worried about its legal requirements. Substack handles all that hence I finally took the plunge and now have a newsletter here on Substack.
I really like Substack. Don’t just look at it as platform for running newsletters. It is actually a very viable option for publishing on. I am not a lawyer, but looking at its legal terms, I own my content and am able to export it and take it with me elsewhere with ease. Just this one point means I would be content to have my posts here as the source of truth with the only compromise being I don’t own the platform. Its builtin newsletter functionality enables you to build an audience and gain new audience immediately.
Also, note that for a one time fee you can even have your own custom domain with them.
If you wish to monetize your content, you have the option to create your own subscription options, make your own decision on whats available to free subscribers and what content available to paying subscribers. The amount you charge for your plans is up to you and Substack just takes a small percentage of it for processing the payments. This model is, in my opinion, better for content creators. It even overlaps on providing some of the benefits Patreon provides content creators.
I might consider moving all of my content to Substack in the future. For now I am sticking with keeping my technical blog as is for the benefit of owning its platform and I prefer to write technical posts using markdown and using the git PR flow for publishing my technical work.
One thing to note is that Substack currently do not support canonical url’s (hope they will one day). Hence I would not use Substack to crosspost duplicates of your posts from elsewhere.
What about dev.to
I am new to dev.to and have no experience of using it as an author, but I thought it is worth a mention.
It is very focussed on software developers and engineers and is easy to join via your GitHub SSO. Their service is all open source and there is no paywall.
They even support the canonical url I mentioned that medium.com supports. Which means you have no reason to not to cross post your posts there.
According to their FAQ page you do own your articles too.
What shall I do?
Have a source of truth that you own for your blog by having it on your own platform
Build your own audience by having a newsletter on Substack
Cross post on external services that support canonical URLS
You can combine options 1 and 2 and just have Substack as your source of truth blogging platform with the only compromise being that you don’t own the platform yourself.
Where do you currently publish your blog? What are your thoughts?
What have I been up to lately
In November I had the privilege of doing a talk at Scale By The Bay 2020 on the Actor model which included talking about akka and ZIO Actors. Recording of my talk has already been published on YouTube here. As a companion to this talk I also wrote 3 blog posts about it:
I spend most of the 1980s and 1990s using and being a fan of IBM Model M keyboards. I missed having one, so I took the plunge and bought the latest version of it. Here is my short unboxing and review of it.
I have started learning the Swift Programming Language by Apple for fun. Must admit, really enjoying it. It is a really nicely thought out language with great tooling. I am currently going through this book, getting familiar with xcode and its tooling and to practice developing a small CLI app using this argument parser library.
Upcoming Tech Talks I have arranged
I will be announcing my upcoming events here on my newsletter first before anywhere else.
You can find out about the technical talks and meetups I organize by visiting
https://www.sfbayareatechies.com/
where you can join our slack and discord communities. If you would like to do a talk at one of my meetups please send me details via this form.
All the events are online at the moment due to Covid19 so you can attend from were ever you are on Twitch (follow me to be notified).
January 2021
We have the great privilege of welcoming Adam Rosien of Inner Product to San Francisco Scala Meetup with a talk on:
effects: cats-effect, concurrency, concurrent state machines, my (upcoming) book about effects in scala (
https://essentialeffects.dev
)
Exact date and time to be confirmed.
February 2021
We have the great privilege of welcoming back Sandeep Virdi to San Francisco Scala Meetup on February 4th, 2021 at 5.30pm with a talk on:
Kiar - Key/Value store with MVCC based Transaction System
Scala - Latest news
The Scala Book
Alvin Alexander wrote an introduction to Scala book. He has kindly donated it to the Scala Center and the Scala community. Read about it here where you can download the ebook versions for free. The book is also available online now on Scala’s website here. It is also my understanding that he has spent time contributing to the Scala 3 Book online.
Thank you Alvin for contributing so much to the Scala community.
Official Scala Discord Community
The Scala community has always been famous for using gitter for keeping in touch with the community. Great news is to offer choice, a Discord community was also setup about a year ago. This alternative is now official and now listed on the Scala community page. Coinciding with this discord was kind enough to provide a vanity URL for the community.
To join discord visit: https://discord.gg/scala
New Scala Library providing easy integration with OAuth2 providers using sttp
Jakub Kozłowski and Ocado Technology open sourced a new Scala library to provide easy integration with OAuth2 providers using the awesome http client library from Softwaremill sttp. Details: sttp-oauth2
New Release of Scala Metals
I continue to enjoy Scala Metals. This month saw a new release Metals v0.9.8 adding:
Ability to export worksheet evaluations.
Scala 3.0.0-M3 support.
Talks and Videos to watch
All the videos from Scale By The Bay 2020 are now available
Lorenzo Gabriele did a tutorial on using Scala.js with Snowpack and Scalablytyped
Scala 3: Python 3 or Easiest Upgrade Ever? by Daniel Spiewak
Justin Heyes-Jones recently launched a new YouTube Channel creating awesome short videos on Functional Programming and Scala. They are very well made and of high quality. I have a long list of conference videos to catch up on, but the short nature of Justin’s videos has made it possible for me to watch all of them even when busy.
Other news
Cloudflare launched a new privacy focused web analytics service as an alternative to Google Analytics. It appears to be free so I am excited to try it out in the future. Details: Cloudflare Web Analytics
Thank you
Thank you reading my first blog. Hope you found it useful. As I do more I will probably try to improve on its format from what it is here. In the meanwhile, if you have something that you would like me to feature in my newsletter please get in touch with me.