User Tools

Site Tools


start

This is an old revision of the document!


About Azman

“One should not pursue goals that are easily achieved. One must develop an instinct for what one can just barely achieve through one’s greatest efforts.” - Albert Einstein

Curriculum Vitae: Basic Resume (Mini)

Code repository: Main, MY1

Feature: my1sim85 (releases), my1digitaljs

Useful Note(s): Linux (Slackware| Devuan), FreeBSD, Raspberry Pi, MCU51 (8051), Git (SCM)

Not-so-complete Note(s): Code:C, Code:C++, Code:Python, Code:Javascript, Code:HDL, System Design

Mini-blog

“Intelligence is not the ability to store information, but to know where to find it.” - Albert Einstein

Read all posts

MY1 C Compiler

Guess what I have been doing for the last month? I call it my1cc (duh!)… and I have published my initial work at codeberg.org. Obviously it is wayyyyy from being usable, but the parser seems to work… somewhat. In the end, I was hoping to develop a usable C compiler for 8051/8085 platforms, so that I can use it in my microcontroller/microprocessor classes. I do have to pause a bit… hopefully I can resume A.S.A.P.

But, DO NOT hold your breath for that :-D

That is all I have to say about that.

2026/02/08 04:56

SPM-Level Computer Science

It turns out, Computer Science (CS) for SPM (Malaysia Certificate of Education @MCE) deals mainly with database and web interface. I have developed database-related systems before, but I was doing it without having formal class on it. Basically, I simply wing-it based on what I know on how computers store data (i.e. C data types).

I need to help my son with some questions, so I looked up 'database normalization' and found some things. The good thing is the way I implemented my database is mainly the 'correct' way. The not-so-good thing is that I am NOT able to help my son much with the practice questions - simply too many terms that I am not familiar with. Just shows that implementations need not be theoretically developed - experience (and good fundamentals) can also help to produce relatively sufficient results.

Anyways, the main reason I am writing this here is to 'store' the following 'note' (for my personal future reference).

db_normalization.txt
Database Normalization
 
Five 'rules' to make data normal: 1NF,2NF,...,5NF (NF=normal form)
- each rule builds on another, starting from 1NF
- 1NF/2NF/3NF -> Core Basics (normalization usually means 3NF!)
- 4NF/5NF -> Exceptions
 
*Note: Normalization is about grouping & connecting data the right way!
 
1NF is about
- atomic values
- unique identifiers
 
*Term: Imagine a spreadsheet -> [table] or [entity]
 
1NF rules
- a cell cannot contain more than 1 value
  = if it does, that column needs to be split into multiple columns
- each row (@record) must be unique
  = look for potential primary key
  = usually, we use system-generated (integers are better!)
- each column name must be unique
- there must be no repeating groups (or cells?)
  = it there are, remove and create new table (1NF!)
 
2NF rule
- all data/column(s) must depend on the primary key
  = if it does not, must be split into it own table (1NF!)
  = use primary key in new table as column value -> foreign key
 
3NF rule
- primary key must define all non-key column(s)
  = non-key column(s) must not depend on any other key
  = if this is not met, must create new table and use foreign key to link
2026/02/08 04:54

Links to stuffs

Things I'm checking out… 8-)

  • RISC-V - RISC open architecture
  • J-Core - SH-compatible (SuperH instruction set) open core design
  • Tiny Tapeout - For me, the new MOSIS :p
  • Neuromorphic - VLSI with analog circuits… an example is theNeurogrid
  • Memristor - Memory capable circuit element… better density, better suited for analog integration?
  • Game Theory - Something that I was VERY interested in, but just couldn't get the time to look further…
  • Matrix - Open Network, Decentralized Communication
  • pcb - Tutorial for PCB layout software
  • Wiring info: Wiring
    • basically, the minimum (AWG30-gauge) is said to achieve 1A easily although the above site states 860mA/142mA

Interesting Links:

  • ARGoS - Large-scale Robot Simulator?

Development Platform

I have decided to use Linux exclusively for my project development work. Which Linux distribution should I use? Let's ask Einstein…

Einstein's view on his choice of OS

Note #1: I got this image from a link in an LQ forum thread. Please inform me if I should NOT use this image (from legal point of view).

Note #2: I would also like to clarify that you do NOT have to be be Einstein to run Slackware. But, you DO need to know how to read (instructions) and write (specifically, type some stuffs on a computer).

All development work will be done on Linux-based systems - Slackware is recommended and is what I use (Devuan is also a good substitute and what I setup for my family), but I'll also try to accommodate people working on other platforms.

I'm inclined towards the MIT license and the Simplified (2-clause) BSD license. Information on various open source license(s) at OSI website. Read more @ wikipedia

Links to local pages

Something...

Something to remember…

Note to self

Dokuwiki Stuffs: purge=true (force re-caching) , do=check , do=export_html , do=export_pdf (plugin)

Setting up dokuwiki…

git clone https://github.com/splitbrain/dokuwiki.git
git checkout --track origin/stable

Dokuwiki plugins I use:

dokuwiki_plugins.txt
- wrap> https://www.dokuwiki.org/plugin:wrap
- include> https://www.dokuwiki.org/plugin:include
  = tag> https://www.dokuwiki.org/plugin:tag
- folded> https://www.dokuwiki.org/plugin:folded
- blog> https://www.dokuwiki.org/plugin:blog
  = pagelist> https://www.dokuwiki.org/plugin:pagelist
- dw2pdf> https://www.dokuwiki.org/plugin:dw2pdf
- iframe> https://www.dokuwiki.org/plugin:iframe
- math2|mathpublish> https://www.dokuwiki.org/plugin:mathpublish
- pagebreak> https://www.dokuwiki.org/plugin:pagebreak
- todo> https://www.dokuwiki.org/plugin:todo
- vshare> https://www.dokuwiki.org/plugin:vshare
start.1776479396.txt.gz · Last modified: by azman

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki