Thursday, December 26, 2013

WordPress: Categories vs Tags


Packt Publishing: WordPress Multisite Administration

https://www.packtpub.com/wordpress-multisite-administration/book

Wiley: WordPress

http://shop.oreilly.com/product/9781118597194.do

Head First WordPress - O'Reilly Media

http://shop.oreilly.com/product/9780596805340.do

WordPress: The Missing Manual - O'Reilly Media

http://shop.oreilly.com/product/0636920021391.do

how to use your WordPress blog with HTTPS (SSL)

http://wordpress.org/plugins/wordpress-https/

quick publishing a web page to your WordPress blog using "Press This"

http://codex.wordpress.org/Press_This

AddThis also makes use of this.

Thursday, December 19, 2013

differences between Bourne shell, Korn shell, C shell, and bash

http://www.efytimes.com/e1/creativenews.asp?edid=123101 :
Always wondered what is the difference between these four shells? Here's the answer. …

just downloaded Avishai Cohen's 2001 album Unity

Certainly: I properly paid for it. And yes, I got it from Az. I was so surprised to find it there. 
  • I am still missing his 1991 album Devotion,
  • and his 2007 album "As is...Live at the Blue Note",
  • and his 2008 album "Sha'ot Regishot", in English: "Sensitive hours".
I think, there are all not available as MP3 (or Ogg Vorbis).

And I also edited the above wikipedia article a little.

Wednesday, December 18, 2013

XML Press: DITA for Practitioners Volume 1: Architecture and Technology


A comprehensive guide to DITA for implementors.

shell code and useless use of "ls *.tar"

Consider this code (I came across such Korn shell script code recently):
TARFILE=$(ls -1 /tmp/*.tar)
According to http://partmaps.org/era/unix/award.html#ls you ought to replace the ls with a glob, e.g. like this:
[[ -s /tmp/*.tar ]] && set -A tarfiles /tmp/*.tar
for TARFILE in "${tarfiles[@]}"
do
  : # ...
done
Instead you may want to enquire ${#tarfiles[@]}, i.e. the number of files globbed.

Please forgive me the naming here! I was happy to take this note anyway.

Monday, December 16, 2013

"topic-oriented authoring" with "DITA" = "Darwin Information Typing Architecture"

DITA for Print (A tutorial introduction to the DITA Open Toolkit FO/PDF stylesheets):
DITA for Practitioners Volume 1: "Architecture and Technology" (comprehensive guide to DITA for implementors):

O'Reilly Media book: Raspberry Pi Hacks


HACK 05: Monitor the Raspberry Pi Hardware

HACK 08: Get More USB Ports: bus powered USB hubs vs. externally powered USB hubs, backpower
HACK 20: Add Additional Memory with Swap (do not swap on SD cards and USB flash drives!)

HACK 21: Build a Cross-Compiler Toolchain; on openSuSE:
  • $ sudo zypper install gcc gcc-c++ bison make ncurses-devel texinfo flex gperf libtool sed subversion gmp-devel libstdc++-devel; # there is no libstdc++-static
  • instead of crosstool-ng-1.18.0.tar.bz2 I got crosstool-ng-1.19.0.tar.bz2
  • completed building crosstool-ng like this: $ sudo make install
  • $ mkdir /usr/local/cross-sandbox && cd /usr/local/cross-sandbox
  • set prefix directory to /usr/local/x-tools/${CT_TARGET}
  • $ env -u LD_LIBRARY_PATH ct-ng build # because it does not like LD_LIBRARY_PATH set
  • *** I am stuck here ***

"radio has been denied Superuser permissions" – keep getting this message after rooting my Galaxy S 2

Apart from pushing the radio out of the task manager's list (i.e. killing the command), I have not found means against this yet.

a couple of books on Perl, that you can read free online

http://www.perl.org/books/library.html

Most of these books you can read online completely.

Saturday, December 14, 2013

"Useless Use of Cat" Award, "Useless Use of …" Award, …


Rather reasonable and entertaining reading as the same time.
In the future I will certainly refer people to his page, whenever I will happen to find an opportunity.

Thursday, December 12, 2013

English grammar/writing: use of "present perfect" as opposed to "past tense"



… . The choice of present perfect or past tense depends on the frame of reference (period or point in time) in which the event is conceived as occurring. … . If the frame of reference extends to the present time, the present perfect is used. … . If the frame of reference is a time in the past, or a period which ended in the past, the past tense is used instead. …
The use of present perfect resp. past tense is quite different (as described above [link]), and German native speakers confuse their use in English a lot; by my experience they rather resist accepting the difference and applying them properly in English. (This is rather annoying.)

Wednesday, December 11, 2013

O'Reilly Media book: Raspberry Pi Cookbook

  • http://shop.oreilly.com/product/0636920029595.do
  • $ sudo apt-get update
  • $ sudo apt-get upgrade
  • reboot afterwards
  • 2.6. Connecting with a Console Lead (using a serial terminal connection and a remote login program like "cu" AKA "call unix" or kermit)
  • 2.9. File Sharing on a Mac Network (using netatalk)
  • 2.10. Sharing the Pi Screen on a Mac (using VNC)
  • 3.6. Editing a File (using the nano editor)
  • 3.15. Making a Screen Capture (using scrot)
  • 3.16. Installing Software with apt-get
  • 3.17. Removing Software Installed with apt-get
  • 3.26. Listing Connected USB Devices (using lsusb)
  • 4 Software
  • 4.3. Installing other Browsers (chromium-browser, iceweasel (Firefox))
  • 4.4. Using the Pi Store [link]
  • 13.4. Displaying Messages on an Alphanumeric LCD

O'Reilly Media book: Getting Started with Raspberry Pi

  • http://shop.oreilly.com/product/0636920023371.do
  • $ sudo raspi-config
  • $ cat /proc/version
  • $ cat /proc/cpuinfo
  • http://elinux.org/RPi_Hub – Raspberry Pi Wiki
  • http://elinux.org/RPi_VerifiedPeripherals
  • the Scratch programming language [wiki] – an educational programming language
  • the Arduino microcontroller development platform
  • it has general purpose input and output pins right on the board

on my wishlist: an LCD panel for the Raspberry Pi

NFS and bad response times – did you set actimeo=0 ?

You should rather not and leave the set-up with its defaults.

actimeo=0 disables file and directory attribute caching. Only use it like this, if there are very good reasons for it.

is "Raspi" the "right nickname" for the Raspberry Pi?

Even en.wikipedia.org knows that name ("https://en.wikipedia.org/wiki/Raspi"), so maybe it's at least quite usual.

headless Raspberry Pi (on my desk)

It's fun to see the Raspberry Pi running headless on my desk.

As described earlier, I set up my Raspi back at home with a screen (connected via HDMI/DVI), a keyboard, a mouse, and attached via eth0 (AKA LAN), later also via wlan0 (AKA wifi).

Now I would like to boot it in "headless mode". My wifi router's ESSID is different here. I start with a LAN connection. It's amazing: I runs w/o my intervention w/o screen, keyboard, and mouse. And I can connect to it with ssh through the network.

So the challenge is to add another wifi access point with its details. I found everything I needed here:
  • I create the new wpa_supplicant.conf entry (on stdout) using the wpa_passphrase command. 
  • I add it to /etc/wpa_supplicant/wpa_supplicant.conf .
  • I add "auto wlan0" to /etc/network/interfaces .
  • After "/etc/init.d/networking restart" or a reboot (w/o a connection through eth0) everything is fine.

Before (and after) modifying configuration files I always create backup copies of them using my utility create_snapshot.sh (resp. create_snapshot.txt). Works on my Linux-s and AIX as well. Initially it was a Korn Shell script, now it's a bash script.

Now the Raspi could join my UMTS router and my NAS sitting in the "black box" below my desk (in the office at my customer's site). Well, if it sits there, it can also be connected via eth0 as well. But now being connected through wifi , it could just sit anywhere within the "realm" of my wifis. But I still enjoy this discreet white box on my desk.

Update:
Added these two lines to my ~/.ssh/config :
Host raspberrypi
    User pi
That allows you to "ssh raspberrypi" instead of "ssh pi@raspberrypi".

Adding your "public key" to ~/.ssh/authorized_keys also helps logging in the "private / public keys way" instead of supplying a password.

O'Reilly Media book: Relational Theory for Computer Professionals

Relational Theory for Computer Professionals:
There are literally hundreds of books on relational theory or the SQL language, or both. But this one is different. First, nobody is more qualified than Chris Date to write such a book; Ted Codd, inventor of the relational model, and he were colleagues for many years, and his involvement with the technology goes all the way back to the time of Codd’s very first papers, in 1969-1970. Second, most books try to use SQL as a vehicle for teaching relational theory, but this book very deliberately takes the opposite approach. Its primary aim is to teach relational theory as such.

O'Reilly Media book: Industrial Internet

Industrial Internet:
Consumer networks have revolutionized the way companies understand and reach their customers, making possible intricate measurement and accurate prediction at every step of every transaction. The same revolution is underway in our infrastructure, where new generations of sensor-laden power plants, cars and medical devices will generate vast quantities of data that could bring about improvements in quality, reliability and cost. Big machines will enter the modern era of big data, where they’ll be subject to constant analysis and optimization.

The promise of the industrial Internet is that it will bring intelligence to industries that are capital-intensive and create broad value that all of the industrial Internet’s participants will share.

This report examines the industrial Internet across several industries. It describes both near-term efforts as well as the longer-term development that will emerge as software and machines further integrate.

O'Reilly Media book: The New Kingmakers

The New Kingmakers:
The New Kingmakers documents the rise of the developer class, and provides strategies for companies to adapt to the new technology landscape. From recruiting to retention, it provides a playbook to work more efficiently and effectively with the most important members of your organization.

Tuesday, December 10, 2013

O'Reilly Media book: Jump Start Sinatra

Jump Start Sinatra:
This short SitePoint book provides readers with a fun and yet practical introduction to Sinatra, a framework that makes web development with Ruby extremely simple. It's not intended to be a completely comprehensive guide to the framework or an in-depth Ruby tutorial, but will quickly get you up to speed with Sinatra and give you the confidence to start experimenting on your own.

The book is built around a real-life example project: a content management system. It's a fun and easily understandable project that is used to demonstrate the concepts outlined in the book in a practical way.

This is a clear, approachable and very easy-to-follow book that will get you to to speed with Sinatra in no time.

The Pragmatic Bookshelf: Raspberry Pi

The Pragmatic Bookshelf | Raspberry Pi

Rocky Nook book: Improving the Test Process – Implementing Improvement and Change - A Study Guide for the ISTQB Expert Level Module

Improving the Test Process:
This book covers the syllabus for the Improving the Test Process module of the International Software Testing Qualifications Board (ISTQB) Expert Level exam.

To obtain certification as a professional tester at the Expert Level, candidates may choose to take a course given by an ISTQB accredited training provider and then sit for the exam. Experience shows that many candidates who choose this path still require a reference book that covers the course. There are also many IT professionals who choose self-study as the most appropriate route toward certification.

This book can be used both as a preparation guide for those planning to take the ISTQB Expert Level certification exam and as a practical guide for experienced testing professionals who want to develop their skills in improving test processes.

The Pragmatic Bookshelf: Build Awesome Command-Line Applications in Ruby 2

Build Awesome Command-Line Applications in Ruby 2:
Speak directly to your system. With itssimple commands, flags, and parameters, a well-formed command-lineapplication is the quickest way to automate a backup, a build, or adeployment and simplify your life. With this book, you'll learnspecific ways to write command-line applications that are easy touse, deploy, and maintain, using a set of clear best practices andthe Ruby programming language. This book is designed to makeany programmer or system administrator moreproductive in their job. Now updated for Ruby2.

PacktPub book: Raspberry Pi Networking Cookbook

http://www.packtpub.com/raspberry-pi-networking-cookbook/book

PacktPub book: Raspberry Pi Media Center

Raspberry Pi Media Center | Packt Publishing

O'Reilly Media book: HTML5: The Missing Manual

HTML5: The Missing Manual:
HTML5 is more than a markup language—it's a dozen independent web standards all rolled into one. Until now, all it's been missing is a manual. With this thorough, jargon-free guide, you'll learn how to build web apps that include video tools, dynamic drawings, geolocation, offline web apps, drag-and-drop, and many other features. HTML5 is the future of the Web, and with this book you'll reach it quickly.

The Pragmatic Bookshelf: The Agile Samurai: How Agile Masters Deliver Great Software

The Pragmatic Bookshelf | The Agile Samurai

The Pragmatic Bookshelf: Pomodoro Technique Illustrated: The Easy Way to Do More in Less Time

The Pragmatic Bookshelf | Pomodoro Technique Illustrated

The Pragmatic Bookshelf: The Dream Team Nightmare

The Dream Team Nightmare:
This first-ever interactive Agile Adventure is the gripping tale of an experienced team struggling with agile adoption. In this unique mashup of a business novel written in the gamebook format, you'll overcome common yet daunting challenges that come from using agile methods. As Jim, the agile coach, you'll learn to apply a range of thinking tools and techniques to real-life problems faced by teams and organizations. Find out what really works and what fails miserably from the consequences of your choices. And, unlike in the real world, if at first you don't succeed, you can make different choices until you get things right.


O'Reilly Media book: Heroku: Up and Running

Heroku: Up and Running:
Take full advantage of Heroku’scloud-based hosting services. This guide takes you through theinner workings of this PaaS platform and delivers practical advicefor architecting your application to work as efficiently aspossible. You’ll learn best practices for improving speedand throughput, solving latency issues, locating and fixingproblems if your application goes down, and ensuring yourdeployments go smoothly.

O'Reilly Media book: Python Pocket Reference

Python Pocket Reference:
Updated to cover Python 2.7 and 3.4, this compact reference is the perfect on-the-job tool for developing applications with this versatile programming language. By covering the core language as well as commonly-used libraries, this small but potent book both serves as an ideal complement to Python tutorials. This fifth edition includes specific built-in types and Statements, and standard Modules.

O'Reilly Media book: ZooKeeper – Distributed Process Coordination

ZooKeeper:
Building distributed applications is difficult enough without having to coordinate the actions that make them work. This practical guide shows how Apache ZooKeeper helps you manage distributed systems, so you can focus mainly on application logic. Even with ZooKeeper, implementing coordination tasks is not trivial, but this book provides good practices to give you a head start, and points out caveats that developers and administrators alike need to watch for along the way.

O'Reilly Media book: Switching to the Mac: The Missing Manual, Mavericks Edition

Switching to the Mac: The Missing Manual, Mavericks Edition:
Ready to move to the Mac? This incomparable guide helps you make a smooth transition. New York Times columnist and Missing Manuals creator David Pogue gets you past four challenges: syncing with iOS, transferring your stuff, assembling Mac programs so you can do what you did with Windows, and learning your way around OS X Mavericks.

XML Press: DITA for Print

http://shop.oreilly.com/product/9781937434274.do:
DITA for Print takes you step-by-step through the process of building a print customization plugin for the DITA Open Toolkit that will give you control over your PDF output.

A tutorial introduction to the DITA Open Toolkit FO/PDF stylesheets.

my open Raspberry Pi questions

  • Should I use a USB-attachable external disk for swapping? (I do have a few "spare" ones)
To be continued …

"Getting Started with Java SE Embedded on the Raspberry Pi" (by Bill Courington and Gary Collins)

http://www.oracle.com/technetwork/articles/java/raspberrypi-1704896.html by Bill Courington and Gary Collins

It includes a lot of useful Linux tweaks, that you may want to apply apart from installing Java SE anyway.

Resize the SD Card Partitions:
About half the card’s space is unallocated. The biggest chunk of free space follows the /dev/sdb3 partition. To add this space to /dev/sdb2 (the file system), we temporarily delete /dev/sdb3, extend /dev/sdb2, then re-create /dev/sdb3.
I started making use of the "Java SE" label with this article. Should apply it elsewhere as well.

It has a section "Optional Linux Tuning and Tweaking":

  • Set Up Static IP Address
  • Enable Swapping and Optimize File System Access Time
  • Set Time Zone and Locale
  • Set Up a Time Server
  • Set Up an Internet Proxy
  • Remap the Keyboard
  • Update Debian Packages
  • Automatically Start the Graphical User Interface
  • Add a Different Web Browser
  • Enable Sound
Do I really want to swap on the SD card? They discourage it there.

Debian Linux: administration, …


The "Raspberry Pi" is my second encounter with Debian, ASUS's early "Eee PC" was the first. I need to refresh and extend my knowledge there.

The Pragmatic Bookshelf: Seven Concurrency Models in Seven Weeks

Seven Concurrency Models in Seven Weeks:
Your software needs to leverage multiple cores, handle thousands of users and terabytes of data, and continue working in the face of both hardware and software failure. Concurrency and parallelism are the keys, and Seven Concurrency Models in Seven Weeks equips you for this new world. See how emerging technologies such as actors and functional programming address issues with traditional threads and locks development. Learn how to exploit the parallelism in your computer's GPU and leverage clusters of machines with MapReduce and Stream Processing. And do it all with the confidence that comes from using tools that help you write crystal clear, high-quality code.

Saturday, December 7, 2013

purchased my 1st "Raspberry Pi" "Model B" last (Friday) night

I found a cooperative employee at the Conrad branch, who got me all the things I needed, including Wheezy on an SD card. But I didn't know, how and which monitor I would attach, so that's what I have to solve on my 2nd related visit at the shop. I am rather hot to see it booting soon.

Unnecessary:

  • I should not have purchased the mega-sized AVM wifi dongle.
  • I should have found out before (at least before getting the converter), how to connect the Pi to monitors.

Update 2013-12-08:

  • got me more HDMI-DVI-adpaters yesterday, with cables,
  • should have gotten me a USB hub as well, as there are only 2 USB plugs,
  • well, the USB mouse went into the (playstation2) keyboard,
  • the EDIMAX wifi dongle found its plug,
  • got it booted,
  • got it connected via LAN to the Internet,
  • got wifi set up through WPS.
  • had to stop my experiments in favour of son#2.
This IS different to KDE and GNOME:
  • (apparently) you cannot set up the date/time format centraly,
  • even not the timezone.
  • you also cannot set up the virtual desktops in a grid.
But it IS Linux / Unix, and it is X-Windows, and it connects to the Internet, and there is a modern browser, …


  • I created a separate "bookmark article" on Java SE on the Raspberry Pi, cf. the "Raspberry Pi" label on this blog


Thursday, December 5, 2013

what a nice comparison of build tools: Make, Rake, Ant, Gradle

http://hyperpolyglot.org/build

Includes a table listing all their features and showing how the others deal with it.

Make allows you to insert a dash between the tab and before the statement in order to ignore that statement's exit code. The other build tools do not have that feature.

Wednesday, December 4, 2013

AIX moans: "Cannot open or remove a file containing a running program"


I came across this phenomenon in various contexts on AIX. 
It really sounds like "text file busy" from the old Unix days.

Looks like the guys who misuse this error message for there miserable situations actually mean "cannot open or remove a file". I call this capturing.

Looks like some variants of the "copy" utility (like CPAN File::Copy) use this error message instead of "no such file or directory". Maybe this happens in concurrent environments / situations, where a file disappears between the call to File::Copy and the actual kernel "open". Once "open" has a file handle, the inode access counter gets incremented, and the file cannot really disappear any longer, as long as it remains open ie. did not get closed again.

To be continue …

last night's online e-book purchases through o'Reilly Media

  • PacktPub--Instant_Nokogiri.20130826122153.pdf (ruby xml)
  • TidBITS--Take_Control_of_Your_Online_Privacy.20130827161623.pdf
  • nostarch--Book_of_GIMP.20130128094115.pdf
  • nostarch--Perl_One_Liners.20131101112448.pdf (perl)
  • rockynook--Testing_Cloud_Services.20130826101828.pdf (testing)


Tuesday, December 3, 2013

studied RT (AKA "Request Tracker") and its model of roles a little

The wiki seems to be more useful than the book [link]. I added a few notes on the roles at the entry on the book here on the blog at http://blog-en.jochen.hayek.name/2013/05/oreilly-media-book-rt-essentials.html.

my VirtualBox on Mavericks crashed today, so I upgraded to 4.3.4

https://www.virtualbox.org/wiki/Downloads

Mavericks disorders the windows within my "desktops"

That's rather bad with my long running applications like the Chromium browser or my virtual machines running within VirtualBox. I have to stop the browser or even VirtualBox itself. And just a few minutes "ago", VirtualBox even aborted abruptly without saving the states of the virtual machines. I hate that.