In this video we will learn about Coursier - a pure Scala artifact fetcher that became a full blown package manager and a one stop shop for all your Scala environment needs.
In this video we will see how easy it is to access Guake's realtively hidden settings and sync them with the rest of your .dotfiles.
Guake's website:
http://guake-project.org/
My .dotfiles:
https://github.com/agilesteel/.dotfiles
This video is part of the following playlist:
https://www.youtube.com/playlist?list=PLJGDHERh23x9DbNtd7AoGlvuuejBuxrPZ
Website: https://devinsideyou.com
Patreon: https://patreon.devinsideyou.com
Discord: https://discord.devinsideyou.com
Twitter: https://twitter.devinsideyou.com
Github: https://github.devinsideyou.com
Install scripts: https://install.devinsideyou.com
Giter8 templates: https://g8.devinsideyou.com
Spotify concentration playlist: https://code.radio.devinsideyou.com
Cheers and Happy Coding!
#tutorial
...
https://www.youtube.com/watch?v=3s5zo1fF0-k
In this video we will install and play around with the Ammonite REPL, which is an alternative to the scalac REPL.
Li Haoyi (Ammonite's creator): https://twitter.com/li_haoyi
Ammonite's Website:
https://ammonite.io/
Windows Subsystem for Linux (WSL) Documentation:
https://docs.microsoft.com/en-us/windows/wsl/about
The wikipedia article about the Ammonoidea:
https://en.wikipedia.org/wiki/Ammonoidea
The trail touting library mentioned in the video:
https://github.com/sparsetech/trail
This video is part of the following playlist:
https://www.youtube.com/playlist?list=PLJGDHERh23x9DbNtd7AoGlvuuejBuxrPZ
Website: https://devinsideyou.com
Patreon: https://patreon.devinsideyou.com
Discord: https://discord.devinsideyou.com
Twitter: https://twitter.devinsideyou.com
Github: https://github.devinsideyou.com
Install scripts: https://install.devinsideyou.com
Giter8 templates: https://g8.devinsideyou.com
Spotify concentration playlist: https://code.radio.devinsideyou.com
Cheers and Happy Coding!
#tutorial
...
https://www.youtube.com/watch?v=Pu2ctl4rzJg
One of the most influential programming books I've ever read.
Get it here:
https://tinyurl.com/4v7py43z
Table of Contents:
00:00 Intro & Preface
01:42 Meta Info
02:56 Content & What is Extreme Programming?
06:08 Book Review
07:33 XP Review
Website: https://devinsideyou.com
Patreon: https://patreon.devinsideyou.com
Discord: https://discord.devinsideyou.com
Telegram: https://telegram.devinsideyou.com
Twitter: https://twitter.devinsideyou.com
GitHub: https://github.devinsideyou.com
LBRY: https://lbry.devinsideyou.com
Install scripts: https://install.devinsideyou.com
Giter8 templates: https://g8.devinsideyou.com
Spotify concentration playlist: https://code.radio.devinsideyou.com
Cheers and Happy Coding!
#XP
...
https://www.youtube.com/watch?v=m_QreQpXv0c
In this video we will create a Giter8 template which will set up a zero dependencies SBT multibuild project for Uncle Bob's Clean Architecture.
The code for the entire project is here:
https://github.com/DevInsideYou/cat.g8
The commit from this video is here:
https://github.com/DevInsideYou/cat.g8/commit/23d5d987183ac756a9a5275e6002dde6a950f238
Use the template like this:
sbt new DevInsideYou/cat.g8
The Clean Architecture from "The Clean Code Blog" by Robert C. Martin (Uncle Bob):
https://blog.cleancoder.com/uncle-bob/2012/08/13/the-clean-architecture.html
Giter8's website:
http://www.foundweekends.org/giter8
Giter8 templates from the wiki:
https://github.com/foundweekends/giter8/wiki/giter8-templates
Giter8 templates from the Github search:
https://github.com/search?l=Scala&o=desc&q=.g8&s=updated&type=Repositories
Create your own templates with:
sbt new foundweekends/giter8.g8
Testing SBT plugins with the scripted plugin:
https://www.scala-sbt.org/1.x/docs/Testing-sbt-plugins.html
This video is part of the following playlists:
https://www.youtube.com/playlist?list=PLJGDHERh23x-ubG8Kk8cA0tgmy7dfDzqp
https://www.youtube.com/playlist?list=PLJGDHERh23x9DbNtd7AoGlvuuejBuxrPZ
Table of Contents
00:27 Architecture
02:55 Giter8 Template Setup and Cleanup
09:03 Giter8 Template Fields
11:39 Target Project Setup
14:48 Clean Architecture
Website: https://devinsideyou.com
Patreon: https://patreon.devinsideyou.com
Discord: https://discord.devinsideyou.com
Twitter: https://twitter.devinsideyou.com
Github: https://github.devinsideyou.com
Install scripts: https://install.devinsideyou.com
Giter8 templates: https://g8.devinsideyou.com
Spotify concentration playlist: https://code.radio.devinsideyou.com
Cheers and Happy Coding!
#cat.g8
...
https://www.youtube.com/watch?v=NiLwBrgwe8M
In this video we are going to implement a method on our Sets which will render the binary trees backing them. The output is inspired by the Linux "tree" command.
The code for the entire project is here:
https://github.com/DevInsideYou/homegrown-collections
The 2 commits from this video are here:
https://github.com/DevInsideYou/homegrown-collections/commit/0cfca86738a5544b175ff0858858bdbc3211896d
https://github.com/DevInsideYou/homegrown-collections/commit/8c87811aaa8ef397a3dbebe27d0f63bb68e573cc
An article about the "tree" command in Linux is here:
https://www.geeksforgeeks.org/tree-command-unixlinux/
A unicode character search site is here:
https://www.compart.com/en/unicode
The rendering examples mentioned in the video are here:
https://www.dreamincode.net/forums/topic/333571-tostring-for-binary-tree/
https://stackoverflow.com/questions/801740/c-how-to-draw-a-binary-tree-to-the-console
https://connorgarvey.com/blog/?p=82
This video is part of the following playlist:
https://www.youtube.com/playlist?list=PLJGDHERh23x-4bTASKbtwhhAuP6rYQJqE
Website: https://devinsideyou.com
Patreon: https://patreon.devinsideyou.com
Discord: https://discord.devinsideyou.com
Twitter: https://twitter.devinsideyou.com
Github: https://github.devinsideyou.com
Install scripts: https://install.devinsideyou.com
Giter8 templates: https://g8.devinsideyou.com
Spotify concentration playlist: https://code.radio.devinsideyou.com
Cheers and Happy Coding!
#tutorial
...
https://www.youtube.com/watch?v=vQJ0K7S0_jg
In this video we will learn about property based testing, which is an alternative to example based testing.
ScalaCheck Website:
https://www.scalacheck.org/
ScalaCheck Documentation:
https://www.scalacheck.org/documentation.html
ScalaCheck UserGuide:
https://github.com/rickynils/scalacheck/blob/master/doc/UserGuide.md
ScalaCheck ScalaDoc API:
https://www.scalacheck.org/files/scalacheck_2.11-1.14.0-api/index.html
ScalaCheck-Shapeless:
https://github.com/alexarchambault/scalacheck-shapeless
"How does ScalaCheck Shrinking Work?" blog article by @ssanj:
https://blog.ssanj.net/posts/2017-04-12-how-does-scalacheck-shrinking-work.html
"Choosing properties for property-based testing" blog article and presentation by @ScottWlaschin:
https://fsharpforfunandprofit.com/posts/property-based-testing-2/
Inspiration for Generators:
https://github.com/ambiata/disorder.scala/tree/master/src/main/scala/com/ambiata/disorder
Midwest.io 2014 - Property-Based Testing for Better Code - Jessica Kerr:
https://www.youtube.com/watch?v=shngiiBfD80
John Hughes (Coinventor of the original QuickCheck library in Haskell) - Testing the Hard Stuff and Staying Sane:
https://www.youtube.com/watch?v=zi0rHwfiX1Q
Website: https://devinsideyou.com
Patreon: https://patreon.devinsideyou.com
Discord: https://discord.devinsideyou.com
Twitter: https://twitter.devinsideyou.com
Github: https://github.devinsideyou.com
Install scripts: https://install.devinsideyou.com
Giter8 templates: https://g8.devinsideyou.com
Spotify concentration playlist: https://code.radio.devinsideyou.com
Cheers and Happy Coding!
#ScalaCheck #Scala #tutorial
...
https://www.youtube.com/watch?v=KMiDhMzDsUA
This video is an overview of the Tagless Final (TF) approach.
The code for the entire series is here:
https://github.com/DevInsideYou/tagless-final
The False Hope of Managing Effects with Tagless Final in Scala (TF Critique):
https://degoes.net/articles/tagless-horror
Structure and Interpretation of Computer Programs (SICP):
https://web.mit.edu/alexmv/6.037/sicp.pdf
Oleg Kiselyov's website:
http://okmij.org/ftp/
The "Typed Tagless Final Interpreters" paper from Oleg Kiselyov's website:
http://okmij.org/ftp/tagless-final/course/lecture.pdf
If you decide to follow along with the paper, this might help:
https://gist.github.com/OlivierBlanvillain/48bb5c66dbb0557da50465809564ee80
The "Extensible Denotational Language Specifications" paper by Robert Cartwright and Matthias Felleisen:
https://pdfs.semanticscholar.org/321c/a540ce3a9beed5db54c8f8047191b8185c50.pdf
This video is part of the following playlist:
https://www.youtube.com/playlist?list=PLJGDHERh23x-3_T3Dua6Fwp4KlG0J25DI
Table of Contents:
00:00 Introduction
04:20 What problem does TF solve?
06:36 Metalinguistic Abstraction (SICP)
11:14 Tagged initial embedding
15:40 Tagless initial embedding
16:22 Origin of the "tagless final" name
16:45 What is tagless final?
18:08 Misc
Website: https://devinsideyou.com
Patreon: https://patreon.devinsideyou.com
Discord: https://discord.devinsideyou.com
Twitter: https://twitter.devinsideyou.com
Github: https://github.devinsideyou.com
LBRY: https://lbry.devinsideyou.com
Install scripts: https://install.devinsideyou.com
Giter8 templates: https://g8.devinsideyou.com
Spotify concentration playlist: https://code.radio.devinsideyou.com
Cheers and Happy Coding!
#tf #Scala #tutorial
...
https://www.youtube.com/watch?v=XJ2NjqkWdck