Friday, October 7, 2022

Rails 6 - enums - March 2021

https://betterprogramming.pub/how-to-use-enums-in-rails-6-87600e292476

javascript - this keyword

https://huzefabiyawarwala.medium.com/reincarnated-this-keyword-in-javascript-19488a26d796

Docker related - Rails On Docker Simplified


Rails on Docker:

https://huzefabiyawarwala.medium.com/rails-on-docker-simplified-84c1bfb485c3

https://www.digitalocean.com/community/tutorials/containerizing-a-ruby-on-rails-application-for-development-with-docker-compose


Kitematic open-source GUI tool to watch/start/stop containers:

https://github.com/docker/kitematic/wiki/Early-Linux-Development


How Docker and Kubernetes work together

https://containerjournal.com/topics/container-ecosystems/how-docker-and-kubernetes-work-together/

https://stackify.com/kubernetes-docker-deployments/

Rails - Single Table Inheritance

https://medium.com/@dcordz/single-table-inheritance-using-rails-5-02-6738bdd5101a

https://huzefabiyawarwala.medium.com/single-table-inheritance-in-rails-fc28a56a3f9

https://stackoverflow.com/questions/555668/single-table-inheritance-and-where-to-use-it-in-rails

https://old.alexreisner.com/code/single-table-inheritance-in-rails - very good overview of which options, we'll typically have, when faced with a design problem


StimulusJS related

https://www.betterstimulus.com/

https://github.com/stimulus-use/stimulus-use

https://stimulus-use.github.io/stimulus-use

https://dev.to/adrienpoly/animations-with-turbolinks-and-stimulus-4862

Tuesday, September 20, 2022

Courses suggested by Javinpaul (Twitter)

 Best Software Architecture and Design Pattern Courses

1. Design Patterns in Java - bit.ly/3nYGrYR

2. Grokking the OOP Design - bit.ly/3pA4wFD

3. Master Microservices  - bit.ly/2FNlleF

4. Software Architecture Patterns - bit.ly/38Ixqg5


5 Free Courses for Data Structure and Algorithms

1. Data Structure  - bit.ly/3l4VxMj

2. Algorithms - bit.ly/3P45Gqi

3. A Visual Intro to Algorithms - bit.ly/3NcwIKx

4. Data Structures Java - bit.ly/2F5V1uW

5. more - bit.ly/3w2YQJY


5 Best Courses for Microservices

1. Microservice Architecture  - bit.ly/3w1zGva

2. Principles - bit.ly/3ruSCR7

3. Scalable Microservices - bit.ly/3MaP7GS

4. Microservice with Java   -  bit.ly/2FNlleF

5. more - bit.ly/3PQzR3v



6 System Design Problems

 6 System Design Problems [Solved]

1. Instagram- bit.ly/3BqamCL

2. Youtube Design - bit.ly/3bbNnAN

3. WhatsApp - bit.ly/3SbA9Eu

4. Parking Lot - bit.ly/3eMUosX

5. Library design- bit.ly/3SfwJQe

6. URL Shortner - bit.ly/3dZoQ2G

Friday, September 16, 2022

AWS SQS vs SNS vs EventBridge - When to Use What? - Aug 2021

 

Kafka - basics

 https://developer.confluent.io/tutorials/#learn-the-basics

Streaming 101: The world beyond batch

 https://www.oreilly.com/radar/the-world-beyond-batch-streaming-101/

The Lambda Architecture: 2011 - 

http://nathanmarz.com/blog/how-to-beat-the-cap-theorem.html

Questioning the Lambda Architecture - 2014 - in favour of Kafka - 

http://radar.oreilly.com/2014/07/questioning-the-lambda-architecture.html

Future of Data Engineering - Dec 2019

 

Kafka related - "ETL Is Dead, Long Live Streams: real-time streams w/ Apache Kafka"


Podcasts and YouTube channels recommended by Hussein Nasser

Below is from his Youtube video - https://www.youtube.com/watch?v=4NsWnT_-FoE

Podcasts and YouTube channels recommended by Hussein Nasser

Recommended Podcasts

https://softwareengineeringdaily.com/

https://www.dataengineeringpodcast.com/

https://changelog.com/podcast

Recommended YouTube Channels

https://www.youtube.com/user/TechGuyWeb

https://www.youtube.com/user/99baddawg

https://www.youtube.com/channel/UCRPMAqdtSgd0Ipeef7iFsKw

https://www.youtube.com/channel/UCn1XnDWhsLS5URXTi5wtFTA

Saturday, September 3, 2022

React Native related - error trying to start Simulator using 'i' shortcut

Error: xcrun exited with non-zero code: 2

An error was encountered processing the command (domain=NSPOSIXErrorDomain, code=2):

Unable to boot device because we cannot determine the runtime bundle.

No such file or directory

https://stackoverflow.com/questions/69804969/react-native-runtimeerror-aborterror-xcrun-exited-with-non-zero-code-2-on

https://stackoverflow.com/questions/31179706/how-can-i-launch-the-ios-simulator-from-terminal

Friday, August 12, 2022

Prerequisites for Algorithms by Jeff Erickson

Author lists below as the prerequisites for reading his book: (Below content has been copied from the Prerequisites pages of his book)

• Discrete mathematics: High-school algebra, logarithm identities, naive set theory, Boolean algebra, first-order predicate logic, sets, functions, equivalences, partial orders, modular arithmetic, recursive definitions, trees (as abstract objects, not data structures), graphs (vertices and edges, not function plots). 

• Proof techniques: direct, indirect, contradiction, exhaustive case analysis, and induction (especially “strong” and “structural” induction). Chapter 0 uses induction, and whenever Chapter n−1 uses induction, so does Chapter n. 

• Iterative programming concepts: variables, conditionals, loops, records, indirection (addresses/pointers/references), subroutines, recursion. I do not assume fluency in any particular programming language, but I do assume experience with at least one language that supports both indirection and recursion. 

• Fundamental abstract data types: scalars, sequences, vectors, sets, stacks, queues, maps/dictionaries, ordered maps/dictionaries, priority queues. 

• Fundamental data structures: arrays, linked lists (single and double, linear and circular), binary search trees, at least one form of balanced binary search tree (such as AVL trees, red-black trees, treaps, skip lists, or splay trees), hash tables, binary heaps, and most importantly, the difference between this list and the previous list. 

• Fundamental computational problems: elementary arithmetic, sorting, searching, enumeration, tree traversal (preorder, inorder, postorder, levelorder, and so on). 

• Fundamental algorithms: elementary algorism, sequential search, binary search, sorting (selection, insertion, merge, heap, quick, radix, and so on), breadth- and depth-first search in (at least binary) trees, and most importantly, the difference between this list and the previous list.

• Elementary algorithm analysis: Asymptotic notation (o, O, Θ, Ω, ω), translating loops into sums and recursive calls into recurrences, evaluating simple sums and recurrences. 

• Mathematical maturity: facility with abstraction, formal (especially recursive) definitions, and (especially inductive) proofs; writing and following mathematical arguments; recognizing and avoiding syntactic, semantic, and/or logical nonsense.


Books:

Margaret M. Fleck. Building Blocks for Theoretical Computer Science, unpublished textbook, most recently revised January 2013. Available from http://mfleck.cs.illinois.edu/building-blocks/. 

• Eric Lehman, F. Thomson Leighton, and Albert R. Meyer. Mathematics for Computer Science, unpublished lecture notes, most recent (public) revision June 2018. Available from https://courses.csail.mit.edu/6.042/spring18/. (I strongly recommend searching for the most recent revision.) 

• Pat Morin. Open Data Structures, most recently revised January 2016 (edition 0.1Gβ). A free open-content textbook, which Pat maintains and regularly updates. Available from http://opendatastructures.org/.



Monday, June 20, 2022

How to run bundler with a lower version

~/xxxxx/xxxxx/xxxxx/xxxx/xxxxxx/xxxxxxxx$ gem list | grep bundler
bundler (2.1.4, 1.17.3, 1.16.4, 1.16.1)

~/xxxxx/xxxxx/xxxxx/xxxx/xxxxxx/xxxxxxxx$ bundle _1.17.3_ install
https://stackoverflow.com/questions/9725811/how-to-downgrade-bundler-or-upgrade-rails

Monday, May 23, 2022

Install nvm on MacOS

https://stackoverflow.com/questions/67241196/error-no-template-named-remove-cv-t-in-namespace-std-did-you-mean-remove

https://tecadmin.net/install-nvm-macos-with-homebrew/

Sunday, May 1, 2022

Upgrading from Rails 6.1 to Rails 7.0

https://edgeguides.rubyonrails.org/7_0_release_notes.html

https://edgeguides.rubyonrails.org/upgrading_ruby_on_rails.html#upgrading-from-rails-6-1-to-rails-7-0

https://medium.com/geekculture/whats-new-in-rails-7-b97d44eecdb2

https://dev.to/thomasvanholder/how-to-upgrade-rails-61-to-rails-7-33a3

https://dev.to/thomasvanholder/rails-7-framework-defaults-part-1-2a59

https://www.fastruby.io/blog/rails/upgrades/upgrade-rails-6-1-to-7-0.html

https://www.youtube.com/watch?v=SjdV_1k1QWY ---> Upgrade from Rails 6 to Rails 7 – web-crunch.com

Tuesday, April 12, 2022

Rails ActiveRecord: 2 ways to write 'where' clause

result = Product.where("description LIKE ?", "%Lorem%")

result = Product.where("description LIKE :term", {term: "%Lorem%"})

Thursday, March 31, 2022

MySQL - finding out slow queries

 SELECT * FROM `mysql`.slow_log ORDER BY query_time DESC;

Sunday, March 6, 2022

sed command example

 https://stackoverflow.com/questions/71318743/kubectl-versions-error-exec-plugin-is-configured-to-use-api-version-client-auth

Below command will take a backup of the file and substitute v1alpha1 with v1beta1

sed -i .bak -e 's/v1alpha1/v1beta1/' ~/.kube/config


Friday, March 4, 2022

React Native project - Sep 19 2021

  Build Uber Eats with React Native & YELP API | Redux | Firebase | Google API

React Native project - Jul 30, 2021

Let's build Uber 2.0 with REACT NATIVE! (Navigation, Redux, Tailwind CSS & Google Autocomplete)  

Rails improvements in 2021 - DHH

 https://world.hey.com/dhh/no-railsconf-faa7935e

Tuesday, March 1, 2022

Checklist app in SwiftUI using Core Data

Checklist app in SwiftUI using Core Data - Part 1

Jul 19, 2021

https://www.youtube.com/watch?v=6qtUL8Qgmcw


Checklist app in SwiftUI using Core Data - Part 2

Jul 21, 2021

https://www.youtube.com/watch?v=4RJrHbk-VgE

Build a macOS Menu Bar Realtime Crypto Tracker with SwiftUI & WebSocket - Feb 4, 2022

 

SwiftUI Basic Components

 https://betterprogramming.pub/swiftui-basic-components-ac2c62dc7b95

New CSS features in 2022

 https://www.smashingmagazine.com/2022/03/new-css-features-2022/

Tech Interview Prep

 https://aikikode.me/blog/interview-preparation-2022/

SwiftUI - Alternative to MVVM OR cleaner MVVM

 

iOS related: UI Design for Developers

https://www.youtube.com/playlist?list=PLDaHCLWmCcQLvG6AOpw5VxopkBKIcH9m7 

Above needs subscription 

Adapt SwiftUI app for iPad, Landscape, and Dark Mode

 

Tuesday, February 8, 2022

Sha256 Algorithm Explained

https://sha256algorithm.com/ 

Principles for Designing and Deploying Scalable Applications on Kubernetes - Feb 2022

 https://elastisys.com/designing-and-deploying-scalable-applications-on-kubernetes/

AWS Lambda and ffmpeg

https://aws.amazon.com/blogs/media/processing-user-generated-content-using-aws-lambda-and-ffmpeg/ 

https://aws.amazon.com/blogs/media/2020-resolution-add-user-generated-content-to-your-applications/

Signed Cookies and Signed Urls on AWS CloudFront

https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/PrivateContent.html

https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-signed-urls.html 

Video-on-demand on AWS

https://aws.amazon.com/solutions/implementations/video-on-demand-on-aws/ 

YouTube vs Vimeo

https://blog.hubspot.com/marketing/youtube-vs-vimeo 

HTML5 Streaming

 https://flussonic.com/blog/news/html5-streaming/

Saturday, January 8, 2022

Rails related: Concerns, Module-method extraction Vs Class-based extraction, Concerning module

1) Single-use Modules are probably better off as Classes as per the below article.

 https://www.cloudbees.com/blog/when-to-be-concerned-about-concerns

By and large, maintainers tend to agree that smaller composable classes are the best way to isolate code and keep things clean.

....

....

I'm not saying that you need to go out and refactor all your single-use modules into classes. I am saying if you find yourself reaching to do a module-method extraction, stop. Consider what road you're starting down and these lessons I've shared. What would a class-based extraction look like instead?

2) https://blog.appsignal.com/2020/09/16/rails-concers-to-concern-or-not-to-concern.html 

3) https://api.rubyonrails.org/v5.0/classes/Module/Concerning.html

4) https://scoutapm.com/blog/rails-concerns - sort of consolidates content from the above articles

5) https://rails.devcamp.com/trails/dissecting-rails-5/campsites/data-management-rails/guides/how-to-use-concerns-rails-5

 

Friday, January 7, 2022

Ruby - differences between Proc and Lambda

 https://medium.com/rubycademy/procs-and-lambdas-46433b93080d

Is module_function really the same as extend self?

https://apidock.com/ruby/Module/module_function

https://medium.com/rubycademy/is-module-function-really-the-same-as-extend-self-ac1e96a1cda0

Rails related - Performance improvement

View performance: 

https://blog.appsignal.com/2020/01/22/rails-is-fast-optimize-your-view-performance.html 

ActiveRecord performance:

https://blog.appsignal.com/2021/02/24/troubleshooting-activerecord-performance.html

Building a Rails App With Multiple Subdomains

 https://blog.appsignal.com/2020/03/04/building-a-rails-app-with-multiple-subdomains.html

Building a Multi-Tenant Ruby-on-Rails app

 https://blog.appsignal.com/2020/12/02/building-a-multi-tenant-ruby-on-rails-app-with-subdomains.html

Rails - How to implement Routes for Many-to-Many

https://stackoverflow.com/questions/31258275/rails-4-how-to-implement-routes-for-a-many-to-many-relationship

https://edgeguides.rubyonrails.org/routing.html#routing-concerns

https://edgeapi.rubyonrails.org/classes/ActionDispatch/Routing/Mapper/Concerns.html#method-i-concern


Sunday, January 2, 2022

Draft Pull Requests

 https://software.rajivprab.com/2021/12/26/our-engineering-principles-and-best-practices/

Draft Pull-Requests

For each pull-request, first create a draft pull-request, demonstrating the proposed implementation at a high level. Use TODOs and placeholders to indicate which classes/methods you will be touching. Send it off for review and then immediately start working on the actual code and tests.

This mitigates the amount of wasted effort, if your reviewer then suggests a completely different way of implementing things. Once your reviewer approves the draft, link to it in your pull-request, to make sure everyone knows what was already discussed and agreed on.


CORS related

 https://nickolinger.com/blog/2021-08-04-you-dont-need-that-cors-request/

https://www.reddit.com/r/programming/comments/rurxhl/you_dont_need_that_cors_request/

Computer Networking Introduction - Ethernet and IP (Heavily Illustrated)

 https://iximiuz.com/en/posts/computer-networking-101/

Container Networking Is Simple!

https://iximiuz.com/en/posts/container-networking-is-simple/ 

Followers

Blog Archive