<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Home on Jnjenga - James Njenga</title>
    <link>https://jnjenga.com/</link>
    <description>Recent content in Home on Jnjenga - James Njenga</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <copyright>This work is licensed under a CC 4.0</copyright>
    <lastBuildDate>Fri, 04 Mar 2022 20:36:43 +0300</lastBuildDate><atom:link href="https://jnjenga.com/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Stack to the rescue</title>
      <link>https://jnjenga.com/articles/stack-to-the-rescue/</link>
      <pubDate>Fri, 04 Mar 2022 20:36:43 +0300</pubDate>
      
      <guid>https://jnjenga.com/articles/stack-to-the-rescue/</guid>
      <description>So, I&amp;rsquo;m learning assembly. There&amp;rsquo;s something I&amp;rsquo;ve been wondering for quite some time now. I think I&amp;rsquo;ve figured it out.
 If I&amp;rsquo;m wrong, I&amp;rsquo;d appreciate it if you reach out, :)
 We have a finite number of registers at our disposal when working with assembly code.
mov r0, #10 mov r1, #10 add r0, r0, r1 The example above that adds two numbers. The example uses both registers r0 and r1.</description>
    </item>
    
    <item>
      <title>Remember to Update Robots.txt and File Permissions</title>
      <link>https://jnjenga.com/articles/remember-to-update-robots.txt-and-file-permissions/</link>
      <pubDate>Wed, 30 Jun 2021 18:50:56 +0300</pubDate>
      
      <guid>https://jnjenga.com/articles/remember-to-update-robots.txt-and-file-permissions/</guid>
      <description>Deploying an app can be a boring and cumbersome task. There are a lot of things to consider. One of them is the visibility and permissions of directories and files.
The other day as I was going through the laravel dependencies, I don&amp;rsquo;t know why, maybe because I wanted to see if there are unnecessary ones. Anyway, as I was searching for one of the dependencies github page, I found a website that had their vendor folder indexed.</description>
    </item>
    
    <item>
      <title>On Implementing Things From Scratch</title>
      <link>https://jnjenga.com/articles/on-implementing-things-from-scratch/</link>
      <pubDate>Sun, 09 May 2021 18:00:00 +0300</pubDate>
      
      <guid>https://jnjenga.com/articles/on-implementing-things-from-scratch/</guid>
      <description>Someone recently asked me why I would want to write a game engine from scratch instead of using the ones that exists. So I thought I&amp;rsquo;d write about why I like implementing stuff from scratch and why you should or should not.
Why I do it Firstly, you have to understand why I&amp;rsquo;m writing yet another engine or math library  or css library. Implementing stuff from scratch is not only fun, but also very educative.</description>
    </item>
    
    <item>
      <title>Shift operations</title>
      <link>https://jnjenga.com/articles/shift-operations/</link>
      <pubDate>Sat, 20 Feb 2021 09:30:00 +0300</pubDate>
      
      <guid>https://jnjenga.com/articles/shift-operations/</guid>
      <description>A few weeks ago I got bored and decided to do some bitmap file IO. Through this awesome Wikipedia page, I was able to understand the file format and created a small C++ library bmp.
This fun project led me to learn about shift operations. In this article I will share what I learned.
A bitmap image stores its image data as either 32 bits or 24 bits per pixel. That is, red, green and blue values for 24 bit and an additional alpha value for 32 bit image.</description>
    </item>
    
    <item>
      <title>Compile android apps using android command-line tools</title>
      <link>https://jnjenga.com/articles/compile-android-apps-using-android-command-line-tools/</link>
      <pubDate>Tue, 26 Jan 2021 12:00:00 +0300</pubDate>
      
      <guid>https://jnjenga.com/articles/compile-android-apps-using-android-command-line-tools/</guid>
      <description>I happen to use a very old machine with 2gb ram and pentium dual core CPU as my preferred development machine.
The main android recommended tools for development are android studio and gradle. While these tools are very good, they require high-end PCs to run smoothly.
In this article I will discuss how you can compile and run your android applications through the commandline without android studio.
Contents  Installing requirements Code the app Compiling Aligning and signing the apk Running the app Using androidx and 3rdparty libraries [part 2]  1.</description>
    </item>
    
    <item>
      <title>Steganography, Hide Text in Image</title>
      <link>https://jnjenga.com/articles/steganography-hide-text-in-image/</link>
      <pubDate>Sun, 15 Nov 2020 18:30:00 +0300</pubDate>
      
      <guid>https://jnjenga.com/articles/steganography-hide-text-in-image/</guid>
      <description>In a Cryptography and network security class that I&amp;rsquo;m doing this semester, I came across steganography. In this article I&amp;rsquo;ll take take you through how I implemented it using C using least significant bits technique.
Intro So what is steganography? Steganography is the art of hiding information within something such that the message appears to be something else, or part of something else. Morse code is an example physical steganography where text is encoded using dots and dashes.</description>
    </item>
    
    <item>
      <title>Good Reads and Resources</title>
      <link>https://jnjenga.com/articles/good-reads/</link>
      <pubDate>Fri, 30 Oct 2020 12:00:00 +0300</pubDate>
      
      <guid>https://jnjenga.com/articles/good-reads/</guid>
      <description>This is a list of reads and resources that I&amp;rsquo;ve read or used and found interesting and informative.
# Tech stuff  NASA C style guide Google C++ Style Guide x86-64 Assembly Language Programming with Ubuntu by Ed Jorgensen The Linux Programming Interface Tor and The Dark Net by James Smith  # Fintech  Who&amp;rsquo;s the Who: the players in the Card Payments Industry Acquiring Card Payments - Ilya Dubinsky [Book] Global Payments: And the Fintech Innovations Changing the Industry - Carol Coye Benson [Book] Payment Systems in the US - Carol Coye Benson [Book]  # Papers  A Behavior Model for Persuasive Design by BJ Fogg  # Philosophy  Meditations by Marcus Aurelius  </description>
    </item>
    
    <item>
      <title>Migrating to Hugo</title>
      <link>https://jnjenga.com/articles/migrating-to-hugo/</link>
      <pubDate>Sat, 26 Sep 2020 19:00:00 +0300</pubDate>
      
      <guid>https://jnjenga.com/articles/migrating-to-hugo/</guid>
      <description>As from the title you might have already guessed, I&amp;rsquo;ve successfully managed to move from django to a static website generator.
# Previously Previously, this was a django application, running on the default sqlite3 database served by an apache2 server on some VPS. Django is a very nice web framework that is very easy to learn and very well documented. Django comes with its own admin dashboard which I really love.</description>
    </item>
    
    <item>
      <title>Game of Life</title>
      <link>https://jnjenga.com/articles/game-of-life/</link>
      <pubDate>Sun, 20 Sep 2020 17:34:12 +0300</pubDate>
      
      <guid>https://jnjenga.com/articles/game-of-life/</guid>
      <description>The game of life is cellular automaton by John Conway that simulates the birth and death of cells. It is made up by a collection of cells, the universe, that based on a some rules can either give birth, die or survive.
A cell is either dead or alive. Each cell has eight neighbors. In each tick the following happens :
 Any cell with less than two live neighbors dies, underpopulation.</description>
    </item>
    
  </channel>
</rss>
