Code Monkey home page Code Monkey logo

Introduction

Hi. Here at GitHub I'm phdonner, but on most other platforms I use the signature pdonner. My native language is Swedish, but was born in Tampere, which is a predominantly Finnish city. Therefore most of the school mates had bilingual competence as a gift. That's a good start in learning English, German, French, Spanish, Kiswahili... other languages.

I've been working in English speaking communities, but unidiomatic use of English will hopefully still be excused. If you have time to write to me, you can be confident that politely expressed corrections will be most gratefully received.


The village network cooperative

Right now my primary occupation is development of fiber optic network maintenance systems and tools. I'm doing more or less full-time voluntary work for our rural network cooperative: Kuhmon kyläverkko-osuuskunta (formerly Luoteis-Kuhmon kyläverkko-osuuskunta), which mainly operates in the north-western part of Kuhmo municipality, at the Russian border right on the middle latitude of Finland.

Currently, the cooperative is preparing a smart rural project. Please study the cooperative's Smart Rural 27 pages, in case you would like to have a look at the preparatory work that we have been doing. The pages are a mix of Finnish and English content, but most often with summaries in both directions. Internationalism and multilingual methods are actually vital themes of this site.

Nettinoste banner


The information society

Our project is called NOSTERIIHI, literally the uplift barn while also aluding to brainstorming (fin. 'aivoriihi'). The project is based on the assumption that we are experiencing the first phases of an emerging new mode of production. In the information society, many or perhaps most aspects of production are somehow dependent on information technology. Rural inhabitants in our environment don't want to be spectators of that process, but active agents. Deep understanding and early adoption of the new tools of production can be an asset in rural, scarcely populated environments.

Market driven production creates unnecessary expenses, These are often motivated by IT expenses and the desire of producing a surplus for the investors. Think of the quickly growing bank fees. Often concrete production costs are obscured by abstract concepts like digitization or artificial intelligence. At the same time some of the most potential advantages of information society construction - first of all automation - remain unused. Here the focus is reversed. The project stresses the importance of simple, but effective IT tools and bottom-up and peer oriented collaboration as inroads on the way towards the zero margin society.

📚 References on the information society

Zero Marginal Cost Society: The Internet of Things, the Collaborative Commons, and the Eclipse of Capitalism
by Jeremy Rifkin, 2015.


Moving from theory to practice

This is a personal undertaking which contributes to the NOSTERIIHI smart rural development project. It could be important to state an example of how bottom-up oriented, open-source, voluntary collaboration can be a smart concept which wins over passivating, profit-based and top-down controlled work.

I would certainly like to collaborate with other developers, who are willing to contribute in transforming automation into a way of empowering rural developers. Welcome to the zero-margin collaborative community.


A problem: 'How can Markdown pages be rendered and published on the World Wide Web?'

Software development is in itself a conceptua activity. At best, it provides abstract tools which can facilitate production processes. The information society should provide us with productive tools, which should improve our life quality. But they should do so without resorting to artificial income logic.

It could be practical to start quite modestly by producing a straightforward case, which would prove that there is nothing very mystical about automation.The production of HTML coded web pages has been a rather complicated and error prone process. Markdown is a notation procedure which was invented in the early years of the millenium. However, it is only during the last few years that the technique has become widely popular among developers. One of the reasons, is that GitHub and some other developer resources adopted Markdown as a resource for quick production of Web pages. That is how a couple of resources were aligned to support the process of transforming Markdown to HTML.

This small NOSTERIIHI sub-project will gradually evolve into a bilingual tutorial on methods of setting up a low-cost computer environment, which enables rural developers to produce HTML pages for use in the WWW. This task will be achieved without resorting to commercial services, such as Facebook or WhatsApp. Let's see where the project takes us.


The workflow

Planning is a conceptual activity. To be efficient, we could outline of the various workflows which can be followed in order to arrive at a solution. The following diagram will hopefully guide our work.

flowchart LR
    id1([Markdown])
    id2(GitHub)
    id3([WWW])
    id4(Git)
    id5(GitHub)
    id6(Visual Studio Code)
    id7(Powershell)
    id8(HTML)
    id1-->id2-->id3;
    id1-->id4-->id5-->id3;
    id1-->id6-->id7-->id8-->id3;
style id1 fill:#f9f;
style id3 fill:#f9f;
Loading

If you are curious to know how the above diagram was designed, check out the Markdown subtopic on Mermaid, which is a free diagram design and rendering tool.

The next subheadings are a list of some of the topics and immediate tasks that we are facing right now.


Markdown

Although Markdown is easy to learn, it can still become a rather powerful resource in information society construction. This is how the author of Markup, John Gruber describes the philosophy behind the language:

Markdown is intended to be as easy-to-read and easy-to-write as is feasible.
Readability, however, is emphasized above all else. A Markdown-formatted document should be publishable as-is, as plain text, without looking like it’s been marked up with tags or formatting instructions.

Apart from providing ways of organizing the content in individual documents, it is handy in preparing web pages, writing email, making task lists and so forth. Learn 10 basic notations and you might quickly discover a number of real life applications. Have a look at the GitHub Markdown sample page and push the 'Raw' button to see what the Markdown source document looks like.

However, you should notice that the two resources - Markdown and HTML - serve diverse ends: Markdown gives us a quick way of organizing the structure of documents. HTML provides, on the other hand, all the bells and whistles needed to produce a print-ready document. Don't think that we are advocating the sole use of Markdown. You will see that the two approaches can, in fact, support one another.

Please, have a closer look at the details of this topic by navigating the Markdown page of the NOSTERIIHI project.

🔗 Links to Markdown articles

John Gruber's Markdown introduction on his Daring Fireball site

Markdown Guide
by Matt Cone

Markdown tutorial

📚 References on Markdown

The Markdown Guide
by Matt Cone, 2020.

Using Markdown: A Short Instruction Guide
by William Dyer, 2018.


Git and GitHub

Git is a command language for the safe creation and maintenance of documents. It provides elegant mechanisms for version control. It handles the many updates of the document in an invisible document hidden in the file system. By documenting the various stages of the update history, the user will be able to easily retrieve earlier versions. Collaboration is an other aspect of the development process that Git facilitates. Developers can work concurrently on various aspects of the content without the risk of colliding updates.

GitHub is a free resource, where developers of open-source code and documents can create and share new content. By paying a modest yearly fee, the subscriber gets access to a number of extra features which are not available to the ordinary registered user. There or other similar services with varying focus. Let's try to discover how Git, GitHub and related open-source tools and services could be beneficial in information society construction.

🔗 Links to Git and GitHub articles

Git and GitHub Tutorial – Version Control for Beginners by Ihechikara Vincent Abba

Git Tutorial
at w3schools.com

Git GitHub Getting Started
at w3schools.com

📚 References on Git and GitHub

GIT GITHUB Programming in 8 Hours, For Beginners
by Ray Yao, 2021.


Markdown WWW pages at GitHub

There is a special section of GitHub, located at pages.github.com which is dedicated to WWW publication. Navigate to the GitHub pages, where you can find a tutorial which introduces ways of constructing a site for your personal use or for your organization. Alternatively the pages can become a forum for discussion of your project.

https://github.com/phdonner/ is an experimental site. So please, don't expect that the content would be static somehow. On the contrary: If the structure and the content develops dynamically, then that could be taken as a sign of active and perhaps even productive work.

🔗 Links to Markdown WWW pages at pages.github.com

GitHub pages


Visual Studio Code

Before the appearance of the open-source Linux operating system, Microsoft Windows was by far the most appealing OS platform for software developers. With a low license fee, the entrance threshold was low. With the so called COM-based technologies MS made a leap into easy-going, script or machine language based development of automated systems.

Dependency on proprietary arrangements is, however, in the long run a stumbling block for any non-profit oriented developer. Therefore, the initiative to place both the Visual Studio Integrated Development Environment (IDE) and the PowerShell scripting environment into the domain of open-source and cross-platform development were most welcome moves.

Visual Studio is an extensible tool written by developers for the developer community. This implies that there is a plentitude of extensions. It is interesting to note, that many of them promote Markdown functionality. Here are a few examples of the kind advantages that you can achieve:

  • Create a slide show or a presentation from Markdown code and the Marp extension
  • Make a Markdown compatible diagram with the Mermaid extension
  • Convert your Markdown document to PDF

Tip

If you are already a registered GitHub user, you can experience the functionality of Visual Studio Code without delving into the intricacies of the tool. Replace the .com extension of your GitHub repository web address with .dev. Like this: Change github.com/<your GitHub name> to github.dev/<your GitHub name>. This loads the contents of your page into a browser version of Visual Studio Code.

📹 Tutorial videos on use of Markdown with Visual Studio Code

Note Taking with VS Code & Git
by Reynald Adolphe‬.


Render and transform Markdown into HTML with PowerShell

PowerShell is a scripting language created by developers at Microsoft, but nowadays maintained by an open-source community with MS support. A quite remarkable change of focus came about when this undertaking shook off its narrow roots and turned into a cross-platform language, which is nowadays available for Windows, Apple and Linux operating systems. Raspberry OS support was initially experimental, but since some time the Raspberry Pi installations have been quite stable. As an extension to the Visual Studio Code integrated development environment, PowerShell has become a viable tool for users and administrators with automation needs (perhaps even on a cross-platform basis).

Check out the details by delving into the PowerShell section of this introduction.

🔗 Links to PowerShell documentation

PowerShell Documentation at learn.microsoft.com.

📚 References on PowerShell

Windows PowerShell Cookbook 2e
by Lee Holmes, 2010.


Contact information

This is how you should be able to reach me: Try pdonner at the cooperative's nettinoste.fi domain. There is a lot of spam among those mails, but I'm reading the messages of that post office once or twice every week.

Philip Donner's Projects

pagestest icon pagestest

Find out mechanics of utilizing pages.github.com for WWW publication

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.