Skip to content

Headless via VNC

Headless machines need a head somewhere. A barebones text terminal run via a serial port is the base option. A remote graphics desktop gets into the virtual machine and full access territory. Faster networks and more capable computers and graphics have made the full desktop option feasible enough that Raspbian takes very little to set it up. How to Set Up Easy Remote Desktop Access in Linux by Jack Wallen gets into the Ubuntu and Fedora situation and explains a few things that help fill in the current state of the technology.

Linux is a remarkably flexible operating system. One of the easiest means of understanding that is when you see that, given a task, there are always multiple paths to success. This is perfectly illustrated when you find the need to display a remote desktop on a local machine. You could go with RDP, VNC, SSH, or even a third-party option. Generally speaking, your desktop will determine the route you take, but some options are far easier than others. Once you understand how streamlined modern desktops have made this task, your remote administration of Linux desktops and servers (with GUIs) becomes much simplified.

Here’s the Raspberry Pi documentation on Virtual Network Computing.

Sometimes it is not convenient to work directly on the Raspberry Pi. Maybe you would like to work on it from another device by remote control.

VNC is a graphical desktop sharing system that allows you to remotely control the desktop interface of one computer (running VNC Server) from another computer or mobile device (running VNC Viewer). VNC Viewer transmits the keyboard and either mouse or touch events to VNC Server, and receives updates to the screen in return.

This one also has step by step instruction based on the Real VNC software. Here’s Instructable’s Setting Up a VNC Server on Your Raspberry Pi and at Adafruit, too.

As Wallen notes, there are a number of options and you can find more about them by a bit of research. Here’s a discussion on the Raspberry forums about the best VNC server to use. It’s another technology where you can experiment to see how it works without too much trouble or expense.

Guide to the Galaxy for Mobile App Developers

freetechbooks.com has posted Don’t Panic: Mobile Developer’s Guide to The Galaxy, 17th Edition.  

More than 20 writers from the mobile community share their know-how in dealing with topics such as accessibility in mobile apps, UX design, mobile analytics, prototyping, cross-platform development, native development, mobile web and app marketing.

It is an easy to read rundown about what is going on with app development for mobile devices. At 325 pages there is enough meat to make a full meal yet it isn’t over-burdened with specification and datasheets. The graphics are rather cute but they don’t hinder the presentation.

The price is right and it’s easy to read and you can skim over sections that don’t go your direction. — well worth adding to your e-reader to check out in slack time.

The Amazing $1 microcontroller – a treasure chest for building modern electronic devices

The Amazing $1 microcontroller by Jay Carlson — “A new series that explores 21 different microcontrollers — all less than $1 — to help familiarize you with all the major ecosystems out there.” It is a good overview of what is out there for the electronics guiding much modern equipment as well as a guide to what counts and what doesn’t for these components. 

It’s time for a good ol’ microcontroller shoot-out. …

I wanted to explore the $1 pricing zone specifically because it’s the least amount of money you can spend on an MCU that’s still general-purpose enough to be widely useful in a diverse array of projects. …

Arm started out as a personal computer microprocessor when Advanced RISC Machines formed a joint venture between Acorn, Apple, and VLSI Technology to manufacture 32-bit processors for the Acorn computer. While Arm cores have grown in popularity as microprocessors for battery-powered systems (they are almost certainly powering your smartphone), Arm moved into the microcontroller sphere as well — the ARM7TDMI-S was probably the first Arm core that was used in microcontrollers — i.e., processors with completely self-contained RAM, flash, and peripherals. The Atmel AT91 and ST STR7 were probably the first microcontroller parts designed with an Arm core.

It’s important to understand the history of Arm because it explains a serious feature of Arm microcontrollers that differs substantially from the 8051 (the other multi-vendor architecture that dominates the field): Unlike the 8051, Arm is just a core, not a complete microcontroller. …

And that’s what I want people to think about as they walk away from this. If you’re an Arduino hobbyist looking where to go next, I hope you realize there are a ton of great, easy-to-use choices. And for professional developers and hardcore hackers, perhaps there’s an odd-ball architecture you’ve noticed before, but never quite felt like plunging into — now’s the time.

It’s an exciting time to be involved with electronics — whatever parts you choose to pick up, I hope you’ve enjoyed learning about what’s out there, and can get inspired to go build something great. Definitely leave a note in the comments below if you’ve got something to contribute to the discussion!

It’s rather in the TL; DR camp but that D in this case should be a “Do” rather than a “Don’t.” Carlson covers many aspects of microcontroller choice including part specifications to development environments and boards to debugging to compilers. Do explore this corner of low cost, general purpose, electronics development with Jay.

ten years on and a lot of small (and some big) steps

How I would explain a decade of web development to a time traveler from 2007 by Ivan Zarea 

Today we have many more of them than we did 10 years ago, and that comes with new challenges. We wear computers on our wrists and faces, keep them in our pockets, and have them in our fridges and kettles. The cars are driving themselves pretty well, and we’ve taught programs to be better than humans at pretty much every game out there — except maybe drinking.

See that dust cloud in the rear view mirror? Ivan can help you see what’s in it.

Ubuntu 17.10 (Artful Aardvark) adjustments and workarounds for the Beta

October is around the corner so a new Ubuntu version is getting ready. See the Release Notes. The control buttons for each window are moved back to the right top after seven years and Unity has been replaced by Gnome 3.26 so you might be a bit discombobulated by user interface changes. The standard issue image won’t include a 32 bit version so you’ll need to download the Lubuntu or other flavor if you are restricted to older hardware like the EEE PC I’m using for the hamshack PC.

Wayland is replacing X. You can “echo $XDG_SESSION_TYPE” at the command line to see what you are running. Wayland comes with some obnoxious security, too. If you want to sudo gvim or gparted, you get errors unless you “xhost -si:localuser:root” first. This is about getting some applications that need root access up to date on the new, and supposedly more secure, methods for doing that. You can still switch back to X if you’ve got problems with Wayland. So far Wayland is more promise than reality and doesn’t offer much in terms of noticeable improvement. It’s promise is what will happen as it keeps developers happy with such things as its differences in security and graphics models.

It looks like mount.cifs has had a default SMB protocol version change which might mess up mounting windows shares. This doesn’t bother nautilus access via its ‘Other Locations -> Networks’ but it will bother autofs which I use to access the network storage. I am not sure if this is the old Netgear NAS that doesn’t understand the newer protocols or is a bug in mount.cifs but I regained access by adding “vers=1.0” to the mount options. This gets, again, into security issues (I think). Nautilus uses Fuse filesystem access which is a ‘user space’ technique. CIFS is a kernel involved standard file system mount which means it needs special attention to owner, group, and user permissions and how they meld into the Windows type permissions set up by the NAS. 

Otherwise, things are looking good. 

Bitcoin seduction

It started with an observation based on the Equifax fiasco by Hao-Kai Pai: Defanging identity fraud by verifying identities – “part of the damage here stems from organizations assuming that Social Security Numbers are secret … another part of the problem is that some businesses are startlingly lax about confirming who they are extending credit to.”

That is a core issue in Bitcoins which brings up What you need to know about Bitcoins. This list of advantages includes this howler: “buyers are protected against merchants who may want to charge extra for a lower cost service.” That one is a red flag that socialist ideologies are at the top of the list. Another “advantage” asserts “Bitcoins are provided alternatives to major common currency catastrophes such as getting lost, frozen or damaged.” If you lose your key, you’ve lost your account and if someone steals your key, the steal your account. Anonymity is also asserted as a desirable feature and the implications of this in a properly functioning society needs very careful consideration of its implications.

The fact is that these ‘currencies’ depend upon identity assured via cryptographic means. The security depends upon what you know that others don’t – your private key. What you know that nobody else does is a rather poor basis for establishing identity. Anything that can be photographed needs a chain of authority. What you have is a bit better. This is why a smart phone with an address or telephone number assigned to you and backed by trusted networks is gaining popularity as a means of identity confirmation. But then, what you have can be stolen.

There are a lot of problems with this schema for electronic value transfer. aantonop is a zealot’s YouTube channel that acknowledges problems and rationalizes them by the fact that the phenomena is just getting started and solutions are being found. Those are mostly technical. The hidden ideological basis, though, is a fundamental flaw that is not subject to technical solution. 

But it is interesting that everybody knowing everything (except your private key) is a hallowed virtue of crypto-currencies in light of the fracas about the Equifax exposure of everything for everyone to know.

Magic. What would it cost then?

Apple did their big show to sell the next iteration of improvements and enhancements. That raises the usual cheers and jeers as well as a few questions and concerns. One is: Do “THEY” Really Say: “TECHNOLOGICAL Progress Is Slowing Down”? — 

Consider the 256 GB memory iPhone X: Implemented in vacuum tubes in 1957, the transistors in an iPhoneX alone would have:

  • cost 150 trillion of today’s dollars: one and a half times today’s global annual product
  • taken up a hundred-story square building 300 meters high, and 3 kilometers long and wide
  • drawn 150 terawatts of power—30 times the world’s current generating capacity

That’s why it’s magic. You can pull out some feature and extrapolate it back to some phenomena, like cost, but then you realize there’s much more to the equation that made was is possible now not only infeasible but also impossible then. There is a chain of growth in between that cannot be skipped. 

Movies provide an interesting source of study for this awakening. Consider Star Trek with its Tricorder and Communicator and how these compare to the modern smart phone. That comparison not only has to be in functionality but also in user interface. Or look at the display changes from panels of indicator lights to CRT’s to modern flat screens in movies over the years. Then there’s the whole field of fantasy and dreaming about what might be and what happens when that hits actuality of human needs and purposes dealing with stuff that gets the job done versus stuff that gets in the way.

The big deal this time around is facial recognition. That, for some, is a gross intrusion into personal privacy. Technology seems to bring about this idea that one can be anonymous in any social context. Oxymoronic? 

 

Mob recruitment and leading: Python development

He says they are ‘hiring’ … and it’s an ad hoc group of volunteers trying to make Python better. The problem is significant: how do you encourage and motivate volunteers to join in and add to, rather than detract from, a project such as Python. Hettinger has some rather harsh words about the need to respect others in describing a few cases where good intentions tromped on others’ work unnecessarily. He covers the need for understanding a project identity and philosophy and some of the other factors that bring people together on a big project to make it better.

Raymond Hettinger, “Being a Core Developer in Python”, PyBay2016

What I’ve learned from being a maintainer and core developer for the past 15 years. Thoughts on channeling Guido, stability, hyper-generalization, Sturgeon’s law and [n]egativity, evaluating submissions, inability to predict the future, user centric design, treating mature code differently, believing in or doubting your predecessors, lever arguments and completers, problems of too many choices, implementation details, how much to document, needs of the standard library versus the needs of users, code that is dead on arrival and how PyPI changed everything, orthogonality, importance of skill and expertise, consistency and foolish consistency, optimization and premature optimization, security tautologies, argument ordering, operator abuse, avoiding race to implementation (we can all write working code), the naming of parts, economy of force and complexity balance, feature creep, developing for others, over reliance on Guido, great minds don’t think alike, preference for compactness, and aversion to deprecations. What it means to be completely reliant on long term unpaid volunteers.

Bio:

Raymond has been a prolific contributor to the CPython project for over a decade, having implemented and maintained many of Python’s great features. He has been instrumental in modules like bisect, collections, decimal, functools, itertools, math, random, with types like namedtuple, sets, dictionaries, and in many other places around the codebase. He has contributed to the modification of nearly 90,000 lines of code in the CPython repository, and has made over 160 changes in the PEP repository.

Raymond has also served as a director of the Python Software Foundation, and has mentored many people over the years on their contributions to the python-dev community. He’s also well known for his contributions to the Python Cookbook, and shares many pieces of Python wisdom on Twitter. He received the Distinguished Service Award at PyCon 2014 for his exceptional contributions to the python community.

The talk is a good lesson on volunteer management and leadership and provides insight into what makes FOSS projects that are built on the work of tens or hundreds or even thousands of volunteer contributors successful.

 

 

The Z80 Membership Card

Last month, it was Wes putting together a retro-Pi project to run classic games from days past using emulation on the Raspberry Pi. This time it’s A Classic Retrocomputer Kit from the 1980’s. The idea is to build a classic Z80 computer to fit into an Altoids tin and call it a Z80 Membership Card.

Then in the 1970’s, the microprocessor was invented. Big companies viewed it as a primitive toy that could lure away customers and thus threaten their computing monopoly. But renegade groups of hackers saw it differently. Yes, it was a toy; but also a playground for unparallelled creativity, and a tool of unprecedented power. They sensed that the microcoprocessor was the next great invention that would change the world. The “lights” came on, the “wheels” started turning, and the “presses” quickly started churning out printed circuit boards that would revolutionize the world of computing.
 …

These early microcomputers were pretty crude; like bicycles compared to sports cars. But that’s a good thing! A bicycle is vastly cheaper, and much easier to learn. Yet it can still take you anywhere a car can go, if you’re not in a hurry. And, a bicycle can take you to places that no car can ever go (with better scenery, too)!

 

The hobbyists that built them were often beginners and outsiders that didn’t know how computing was “supposed” to be done. They made their own rules, invented their own solutions, and came up with entirely new applications that were impossible with traditional computers. In the process, they wound up completely re-inventing the entire computing industry.

That was then. Hardware has changed but the ideas are still there. Build your own is a bit more sophisticated. Now you can build your own, too.

The Membership Card is a complete computer that fits in an Altoids tin. Inspired by classic 8-bit computers like the Altair 8800 and Heathkit H8, it is thoroughly documented and easy to build, with big parts, big pads, and big traces and spaces. It uses only generic parts common in the 1980s (and still available today) — no custom parts, and no surface mount. It’s fully self-contained: You don’t need PCs, Windows, megabyte compilers, or secret software to use it. Now you can learn about computers right from the ground up, and really understand how they work!

This is from the first era of the PC. That runs from the introduction of the first Apple and Radio Shack computers up to about 1982. That’s when the market opened up and the Commodore 64 picked up the home end (see the story in Distrita) and the IBM PC was struggling against Kaypro and Osborne and others for the ‘serious’ or business market. The second era in the mid 80’s was about a transition to disk based operating systems rather than ROM based. Hardware design and production improved dramatically and the competition was shaking out the loose leaves. 

The thing is, I already have several Z80 computers. Why build another? How can I use the ones I have? The TRS-80 Model 100 uses an 8085 and is an ideal size for a ham shack desk keyboard with a status display. The problem with these is illustrated by their serial ports. The RS-232 on these classic machines needed handshaking lines and carefully buffering even at 9600 baud speeds. The R-Pi handles serial communications at 115K baud without handshaking.

I am looking at the HP palmtops I have from the 90’s, too. There was a web site that was big on these a while back as there was a market for custom apps designed for them. The keyboards on these things was quite usable. The breaks in the case are probably the biggest inhibitor about trying to use the parts.

It is the keyboard and display that remain one of the biggest hurdles. When a modern tablet can be had for $50, retro projects lose some of any utility appeal they might have had. That just means that other motivations take the fore and that is a ripe field! There’s a lot of old hardware out there so the question is just what you can make with it.

 

 

 

The hidden elephant with the crypto currency fad

Some claim it is the Next Big Thing and going to overturn civilization. It sounds so wonderful with peace, love, and all that: technology is going to solve all human ills and whatnot. Technology dreams seem to invite a blindness.

Luboš Motl gets to the key issue with Bitcoin: Decentralized blockchain and subjectivity of the wave function – “I don’t find the key “virtue” of the cryptocurrencies – decentralization of the list of transactions – terribly important or practical.”

First, think about the blockchain. This concept is a key part of the Bitcoin network. It’s a list of records that remember which payers have moved the cryptocoins to which recipients. This list is growing. All the new transactions are added on top of the old ones. The new transactions are added in blocks. The blocks are finalized when some miner solves a mathematical problem. The solution is being verified by others.

The whole obsession of the cryptocoin community is the ability of the blockchain technology – and therefore the payment system based on the Bitcoin etc. – to decentralize the list of records. Normally, when you’re making payments through a bank, the bank’s computers remember the “official” balance of each account and the list of payments that have taken place.

There is a proposal to use these technologies to assure voting integrity, too. The implications of a distributed ledger of all transactions (or votes) don’t seem to register. That is one big chunk of data that is copied many times. Then there is the inequality thing about miners. These are the folks in the elite set that has the resources to use brute force to calculate security checksums for blocks of transactions which they leverage to gain income.

Jonah Goldberg found the word “ackamarackus” that seems to fit here.