open-menu closeme
Archives icon
Cateogries Tags
About
GenAI icon
Fatlama Newsletter Generative AI
DevOps icon
Automation K8s Done Right
RetroComp icon
Composition Notebooks 8bit Retro Computing Articles
Projects icon
Software Projects Arduino Misterio Esp8266 SQLite
github linkedin rss
  • On Constants

    calendar Oct 4, 2019 · 1 min read
     en humor lang software
     ·
    Share on: twitter facebook linkedin copy
    On Constants

    I think constants are evil (just joking but….I will explain why).

    I am tired of seeing a lot of Java classes filled with the same constants repeated over and over again, instead of collecting them in a common file, which in C Language was called include files (ooooah!).


    Read More
  • Comments are evil?

    calendar Apr 14, 2019 · 1 min read
     en lang software
     ·
    Share on: twitter facebook linkedin copy
    Comments are evil?

    In the 1980 comments were used to reduce the “gap” between unstructured code and “rationale” behind the code.

    1. C/64 Peek and poke where oscure.
    2. Gosub on function pointed by numbers was bad
    3. 8-bit systems was tight on command names and so on (think to write a python interpreter in Arduino/bbc:Micro, or look at the memory consumed by the COMMAND STRINGS on C/64 Basic v2)
    4. C code was not expressive, but good code required little comment, as you can see here
    Today comments are used to:
    1. Comment obscure code -> instead of writing it better
    2. Comment caching code you will end up to commit breaking production ->instead of having a cache config to disable cache on dev machines
    3. Comment not working code will end up in production, producing functional breaks -> because you will forget it and  commit the bad version
    When I am sent on a Red Project, the code is often obscure and not commented at all. So I dare to suggest to deprecate comments at all, replacing it with a set of meta annotation like:
    @Comment("Documentation of this class/method/function/closure")
    @Fixme("Reason")
    @Todo("Why",  deadline=20230423)
     

     


    Read More
  • UTF-8 and Unicode Standards

    calendar Feb 21, 2019 · 1 min read
     en software
     ·
    Share on: twitter facebook linkedin copy
    UTF-8 and Unicode Standards

    Character encoding is a very bad beast when you write code, but UTF-8 will save us.

    Belive me: You will love the Big Brother and the UTF-8.

     

    Unicode Transformation Format 8-bit is a variable-width encoding that can represent every character in the Unicode character set. It was designed for backward compatibility with ASCII and to avoid the complications of endianness and byte order marks in UTF-16 and UTF-32.

    Source: UTF-8 and Unicode Standards Also read this: https://www.joelonsoftware.com/2003/10/08/the-absolute-minimum-every-software-developer-absolutely-positively-must-know-about-unicode-and-character-sets-no-excuses/

  • Detecting Agile bullshit

    calendar Feb 5, 2019 · 1 min read
     devops en software
     ·
    Share on: twitter facebook linkedin copy
    Detecting Agile bullshit

    The department of defense, has published a nice document to “detect” agile bullshit. The document is called DIB_DETECTING_AGILE_BS_2018.10.05 and was published on October 2018.

    We saved a copy on our site, because we think it is very very interesting…

  • The RUP

    calendar Jul 18, 2018 · 2 min read
     en featured software
     ·
    Share on: twitter facebook linkedin copy

    Because some friend of mine did not know about RUP, and deal with waterfall process, I decided to make a small recall for all poor young Project Manager dealing with bad developers, bad consultants and so on, out of there. From Wikipedia:

    The Rational Unified Process (RUP) is an iterative software development process framework created by the Rational Software Corporation, a division of IBM since 2003.[1] RUP is not a single concrete prescriptive process, but rather an adaptable process framework, intended to be tailored by the development organizations and software project teams that will select the elements of the process that are appropriate for their needs. RUP is a specific implementation of the Unified Process.


    Read More
  • Exploring a 23 years old code base: LambdaMoo MUD Part 2

    calendar May 11, 2018 · 2 min read
     en featured software
     ·
    Share on: twitter facebook linkedin copy
    Exploring a 23 years old code base: LambdaMoo MUD Part 2

    In this second article I will continue my jorney on LambdaMoo code base. The C code is very well written. Sometimes the API abuse global variable to avoid passing around identifier like output database file descriptor or the like.

    Because a lot of the system has been written in the Moo language, the core is composed of:


    Read More
  • Exploring a 23 years old code base: LambdaMoo MUD Part 1

    calendar Apr 4, 2018 · 4 min read
     en featured software
     ·
    Share on: twitter facebook linkedin copy
    Exploring a 23 years old code base: LambdaMoo MUD Part 1

    On these days my greek daemon (the one which talk to me about deep nerd programming) was interested on LambdaMoo.

    LambdaMoo is an Object Oriented Multi User Dungeon born back in 1995. A MUD was a text based system you log in, talk with other, create adventures and so on. LambdaMoo has a script language and the entrire system could be customized.

    The LambdaMoo last version 1.8.3 was a work in progress in 2008. LambdaMoo today is 23 years old.

    So my daemon asked me: if you were able to do a  tech refresh of LambdaMoo, waht will you eventually suggest?

    To respond to this question, I need to study the original code


    Read More
  • Meltdown and Spectre

    calendar Jan 31, 2018 · 4 min read
     en software
     ·
    Share on: twitter facebook linkedin copy
    Meltdown and Spectre

    Meltdown and Spectre are two big vulnearbilities found in Intel and AMD chips out of there. The vulenarbility is so huge it affects up to 1995 chips.

    On the raspberrypi, there is a very nice explanation of what Meltdown is.

    First of all, the one who discovered this bug is a GENIUS, for sure.


    Read More
  • Vjdbc

    calendar Jul 1, 2017 · 1 min read
     en software
     ·
    Share on: twitter facebook linkedin copy
    Vjdbc

    Vjdbc is a remote access for JDBC-Datasources developed more then ten years ago (last news are from 2007, with last comit from 2013.

    The project was migrated to Maven 3, but the code base is very old.

    I decided to give it a try, spin a github repository and started working on it, because you know, is nice to have a database driver proxy-logger :)


    Read More
  • La mia esperienza nell’open source

    calendar Jan 15, 2017 · 4 min read
     it knowledgebase org-mode-parser software software-projects
     ·
    Share on: twitter facebook linkedin copy
    La mia esperienza nell'open source

    Nel 2011,  per studiare node js creai un progetto chiamato OrgModeParser.

    Org Mode è un package per l’editor Emacs, ed è pensato per tenere note strutturate, pianificare progetti con una schedulazione, mantenere una lista di cose da fare e generare poi documenti word o html da tali file in modo piuttosto efficace.


    Read More
  • AngularJS alterantive: Micro JavaScript framework on the 2017

    calendar Jan 8, 2017 · 2 min read
     en knowledgebase software
     ·
    Share on: twitter facebook linkedin copy
    AngularJS alterantive: Micro JavaScript framework on the 2017

    AngularJS is indeed a good framework, but if you lose some grip on it (i.e. you go in vacation for 2 weeks), it is very complex to re-grasp.

    Also I have seen junior JavaScript developer confused my $scope use.

    JavaScript on client side has damned destiny: it is too easy to develop a framework from scratch: so roll you dice, cross your finger and find plenty of AngularJS alternatives


    Read More
  • OOP is the your new legacy

    calendar Dec 19, 2016 · 2 min read
     en lang software
     ·
    Share on: twitter facebook linkedin copy
    OOP is the your new legacy

    Today I took a light rail with my son, to bring him to school. That tram is 90 years old. It has been maintained for 90 years. Milan city sold some of them to San Francisco too.


    Read More
  • I am smarter syndrome

    calendar Nov 29, 2016 · 2 min read
     en software
     ·
    Share on: twitter facebook linkedin copy
    I am smarter syndrome

    Sometimes in University I found bold young guy saying something like:

    I will reimplement this in machine language because is faster

    I will reimplement this xyz C function by my own

    My program crash, I think there is a bug in HP UNIX socket implementation

    I will ge rid of this Java Garbage Collector because it is too slow. I will reimplement all the code in my C++ routine.

     

    Belive me: your code is doomed. A full list of guys have already done your same code, found a million bugs and corrected it in the tool you want to replace because they are shitty slow, to your eyes.

    I feel your pain because I made your same mistake. Keep reading.


    Read More
  • BBC Micro bit: first look

    calendar Sep 8, 2016 · 3 min read
     arduino  en featured software
     ·
    Share on: twitter facebook linkedin copy
    BBC Micro bit: first look
    The BBC Micro bit an ARM-based embedded system designed by the BBC for use in computer education in the UK. The device has been given away free [...] [to every 11 years old pupil] in the UK, and is also available for purchase by anyone.

    This is the wikipedia definition.


    Read More
  • Licenze OSS: cartina tornasole

    calendar Sep 5, 2016 · 4 min read
     featured it knowledgebase software
     ·
    Share on: twitter facebook linkedin copy
    Licenze OSS: cartina tornasole

    In ambito Open source vi sono innumerevoli licenze disponibili. Quali sono le loro differenze salienti? Come orientarsi? In questo breve articolo diamo una serie di indicazioni e spunti di riflessione.


    Read More
    • ««
    • «
    • 1
    • 2
    • 3
    • 4
    • 5
    • »
    • »»
Giovanni Giorgi

Copyright 1999-  GIOVANNI GIORGI. All Rights Reserved

to-top