Content for Programming

Programming

Computer programming is the process of designing and building an executable computer program for accomplishing a specific computing task. Programming involves tasks such as: analysis, generating algorithms, profiling algorithms' accuracy and resource consumption, and the implementation of algorithms in a chosen programming language (commonly referred to as coding). The source code of a program is written in one or more languages that are intelligible to programmers, rather than machine code, which is directly executed by the central processing unit. The purpose of programming is to find a sequence of instructions that will automate the performance of a task (which can be as complex as an operating system) on a computer, often for solving a given problem. The process of programming thus often requires expertise in several different subjects, including knowledge of the application domain, specialized algorithms, and formal logic.

Debugging an Arduino project with GDB on Classic ATtiny and Small ATmega MCUs

“A tutorial for people who finally want to debug their Arduino projects that run on AVR MCUs using the GNU project debugger GDB The current Arduino IDE does unfortunately not support debugging. Even the new beta version supports debugging only …

SingleWireSerial - Arduino Library that Supports Single-Wire Half-Duplex Serial Communication

“A new Arduino library has seen the light of day: SingleWireSerial. It supports single-wire, half-duplex serial communication. By using the input capture feature of the AVR MCUs, it is extremely accurate and supports bitrates up to 250 kbps robustly. And …

Detect problems with your Arduino projects

“This article was written by Per Tillisch, Tooling Team SW Engineer at Arduino. The Arduino team created a tool to check Arduino projects for common problems. Arduino Lint runs over 175 checks on your sketches, libraries, and boards platforms which …

Announcing TypeScript 4.0

“Today we are thrilled to announce the availability of TypeScript 4.0! This version of the language represents our next generation of TypeScript releases, as we dive deeper into expressivity, productivity, and scalability. If you’re not familiar with TypeScript …

Project  WireViz

WireViz

“WireViz is a tool for easily documenting cables, wiring harnesses and connector pinouts. It takes plain text, YAML-formatted files as input and produces beautiful graphical output (SVG, PNG, …) thanks to GraphViz. It handles automatic BOM (Bill of Materials) creation …

TinyGo on Arduino Uno: An Introduction

“Run Golang on this old but still popular 8-bit AVR microcontroller. TinyGo - Golang for microcontrollers TinyGo - “Go for small places”, now officially sponsored by Google - is one of the new programming language for microcontrollers. By using a LLVM-based compiler …

MakeCode Arcade Released for General Availability

“Ringing in the New Year with a New Release! The MakeCode team is very happy and proud to announce that MakeCode Arcade has been officially released for general availability today! For those of you who have been following our progress …

Project  Piet

Piet

“Piet is a programming language in which programs look like abstract paintings. The language is named after Piet Mondrian, who pioneered the field of geometric abstract art. I would have liked to call the language Mondrian, but someone beat me …

AVR8js: Simulate Arduino in JavaScript

“New AVR simulator that allows you to compile and run Arduino code directly in your browser! When I write about JavaScript or other Web-related topics, I often include code samples that you can run and interact with. This allows the …

Arduino and Booleans: The truth is greater than zero!

“1 Boolean logic with Arduino Binary and boolean sometimes seem like buzzwords, particularly “binary,” but that’s just because people become so fond of this mode of thinking once they get into it. Hint: They’re the cool geeks with …