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.

Wednesday, November 27, 2013

"FRITZ! Labor" – FRITZ!Box-Beta-Firmwares


  • http://www.avm.de/de/Service/Service-Portale/Labor/
  • Die 7390 ist zwar hardware-ausstattungs-mäßig nicht mehr das Flaggschiff, hat aber immer noch die modernste Firmware, nämlich die "06.00".
  • Die 7490 hat anscheinend noch Stabilitätsprobleme; man bekommt irgendwie häufig Beta-Firmware-Updates angeboten, die neueste ist die "05.60-27017". Ich leiste mir "gerade" den Kick, den Update meines Heim-Routers aus der Ferne anzustoßen.
  • Bin mal gespannt, wann die 7490 tatsächlich das Flaggschiff wird. Hätte irgendwie bisher keines der Alleinstellungsmerkmale der 7490 gegenüber der 7390 gebraucht, aber durch die kleine Austauschwelle konnte ich den Haushalt von Sohn #2 mit einer 7270 versorgen, mit der sich seine tägliche Internet-Zugriffszeit wesentlich besser regulieren lässt als mit dem alten DSL-Minimal-Router.

Perl modules to deal with config files à la "Java Properties": Config::Properties and Config::Properties::Simple



a Perl module helping to validate subroutine parameters: Params::Validate



I will consider employing this module sooner or later. And Perl::Critic as well …

Monday, November 25, 2013

"blur Exchange": yet another IT project market

http://experts.blurgroup.com/technology/

I have no idea, how useful it is resp. for which side. I received a message on LinkedIn, and I thought, I might bookmark it here.

Saturday, November 16, 2013

installing Oracle "Java SE for Embedded" on a Synology NAS


I think, I will use his description for setting up Java on my Synology NAS (resp. NASs), so that I can run the Hibiscus Server (implemented in Java) on them. My NAS at home has plenty of Internet bandwith available, so that I can get my bank account transactions updated over the Internet quite often each day.

Oracle's description on "Oracle Java SE Embedded Downloads":

For the DS112+ I chose the "ARMv5 Linux" entry "successfully". The ARMv6/7 and ARMv7 entries did not run at all. 

For the DS213+ I chose the "Power Architecture Linux - … - e500v2" entry "successfully".

Friday, November 15, 2013

Hibiscus Payment Server – HBCI banking

With the hibiscus-server running on (let's say) your current machine at port 8080 (AKA https://localhost:8080), you have a few rather useful services available:

I would love to see this running on my Synology NAS at home with plenty of Internet bandwith available, so that I can get my bank account transactions updated over the Internet a few times each day.

These days Synology does not supply Java on their devices – I assume, they do not want to get officially bothered with Java difficulties on their devices. But still here I found a description of how to install Oracle Java SE on a Synology NAS:
Wth the "https://localhost:8080/webadmin/rest/hibiscus/konto/…" REST services listed above I get hold off account data rather, rather easily like this:
$ curl --sslv3 --insecure \
    --user jameica:PASSWORD \
    https://localhost:8080/webadmin/rest/hibiscus/konto/list
Now I prefer developing software using Perl, and I will make use of the JSON lists in Perl, and that should be rather easy. I think, I am going to abandon my web-scraping scripts in Perl, once all this is in place. Web-scraping banking web-sites is a rather tedious business, whereas HBCI is a confirmed banking standard in this country (Germany), and I consider the Hibiscus Server as a rather either way to deal with the HBCI Moloch AKA FinTS.

…:

Thursday, November 14, 2013

wiki URL shortening with MediaWiki and Apache

https://www.mediawiki.org/wiki/Manual:Short_URL/Apache

I would really like to achieve that with my recently set up wiki, but so far to no success.

Apple just suggested, that I should update X11 on Mavericks

http://xquartz.macosforge.org/downloads/SL/XQuartz-2.7.5.dmg

I would love to do it immediately, but I guess the DMG is big and I shouldn't do it through mobile phone Internet.

SEPA = Single Euro Payments Area

No Starch Press book: Perl One-Liners

Perl One-Liners:
Perl One-Liners
Perl One-Liners showcases 130 short and compelling lines of code that do all sorts of handy, geeky things.
read more

No Starch Press book: Ruby Under a Microscope

Ruby Under a Microscope:
Ruby Under a Microscope
Ruby Under a Microscope gives developers a fascinating, behind the scenes look at Ruby's core.
read more

changing Perl code I inherited

  • Created a subMain.
  • There were a lot of "my"-s outside any subroutine, moved them as "our"-s to subMain – not the same visibility, I know. 
  • Outside subMain these "our"-s need to get accessed as "main::…".
  • But actually we don't like global variables at all, so pass them as parameters or …

if I needed very nice notebook hardware to run Linux: MALIBAL Nine X570SE

http://www.malibal.com/notebooks/nine-x570se/

Zarafa is the name of a European open source groupware application


Would be interesting to run it
  • on a (Synology) NAS – "busybox" on a variety of CPUS
  • or on a Raspberry Pi – e.g. Debian Wheezy
  • or …

Synology DSM 3rd party packages – this list does not show the platforms the packages are available on

http://www.synology.com/dsm/dsm_app.php?lang=enu#dsm_app_content_tabs_by_3rd_party
E.g. https://en.wikipedia.org/wiki/Zarafa_(software) is only available on ARM and x86 based platforms, and the list doesn't say that.

Wednesday, November 13, 2013

migrated a Korn shell script using "Extended Pattern Matching" to bash

https://www.gnu.org/software/bash/manual/html_node/Pattern-Matching.html

I had to "shopt -s extglob" for that.

I inserted the shopt line rather close to the case statement, where the Extended Pattern Matching gets employed. That was inside a loop. That had no effect, but it didn't say so. I rather threw some weird error messages. I reduced the code around the causing line to its minimum, occasionally moved the shopt to outside the loop, and it worked. If it had only been that straigt …

SSH: if your public keys do not get accepted by the remote side, but (you think) they are in your remote authorized keys file, …

… check, whether the remote side considers authorized_keys or authorized_keys2:
# supposedly only one of them exists:
$ fgrep AuthorizedKeysFile /etc/ssh/sshd_config /etc/sshd_config
AuthorizedKeysFile .ssh/authorized_keys
This is certainly just one possible reason, if public keys do not get accepted by the remote side.

For a couple of weeks I got asked the remote password instead, and I did not understand why. My local public key was properly listed in the remote .ssh/authorized_keys2, but only today I took the time to investigate the issue, and I got reminded of this well-known reason: my remote .ssh/authorized_keys2 simply did not get considered at all. The remote ssh looks at my remote .ssh/authorized_keys, because it got set up like that – see above!

Wednesday, November 6, 2013

Tuesday, November 5, 2013

the bash's "nullglob" is rather nice to use

http://www.gnu.org/software/bash/manual/html_node/Filename-Expansion.html

w/o this command line:
$ shopt -s nullglob
a glob pattern, that does not successfully evaluate to existing file names, gets literally resolved to a file name identical to the glob pattern.
With the above command line executed already, this command line will print file infos of /etc/passwd and ignore the unsuccessful other two glob patterns:
$ ll /etc/passwd /etc/passwd? /etc/passwd??
In interactive mode you may want to see the error messages, within a shell script supplying all three parameters to a "for f in …" loop, you will want the unresolving ones to get ignored.
$ for f in /etc/passwd /etc/passwd? /etc/passwd??; do echo $f; done
Well, at least in my script today I found this option rather useful.

I tried to find something comparable in the Korn Shell, but I wasn't successful.

"Synology unleashes its most affordable 2-bay NAS ever, the DS214se for $160" says 9to5toys


You may want to compare the specs of the DS213+ and the DS214se. I still quite like to own the DS213+.

Thursday, October 31, 2013

the Emacs tramp mailing list and gmane


Emacs and VC AKA Version Control

http://www.gnu.org/software/emacs/manual/html_node/emacs/Customizing-VC.html

I am working for a customer
  • on WinXP
  • with GNU Emacs 24.2.1
  • through Tramp
  • resp. putty plink ("pscp")
  • on AIX files.

They are using CVS on AIX, but as I am actually the only Emacs user there, I don't really bother going through the set-up for using Emacs with CVS on WinXP.

Recently I looked into *tramp/pscp HOSTNAME*, and I decided I would be able cutting down on my waiting time, if I drastically reduced the list of files and directories being checked through VC in that environment.

I really don't mind the VC overhead on OS X or (SUSE) Linux, but in that difficult environment I rather want to proceed as described.

I found vc-handled-backends and customized it the Emacs way, and I was done.

Wednesday, October 23, 2013

created utility "cvsgrep" from "rcsgrep" shipping with O'Reilly's "Unix Power Tools" (the code TAR ball)

Derived cvsrevs from rcsrevs, and cvsgrep from rcsgrep. This is really nice!! Imagine this:
$ cvsgrep -a SEARCHME files


I knew,  rcsgrep and sisters would be very, very useful.

svngrep should be quite useful as well.

OS X Mavericks' privacy default: "Send diagnostics & usage data to Apple"

No, I don't want to get crash reports sent out automatically, no, no, no!

downloaded and installed the latest OS X 10.9 AKA "Mavericks" last night – you get it for free from Apple

https://itunes.apple.com/de/app/os-x-mavericks/id675248567


These applications are experiencing trouble now after installing OS X 10.9:

Monday, October 21, 2013

VirtualBox vs iSCSI

iSCSI supposes Gigabit LAN, so that's a good reason to replace my last non-Gigabit FRITZ!Box by a Gigabit one.
Somebody will get my last FRITZ!Box 7270 (non-Gigabit), and I will get me a new FRITZ!Box 7490.

O'Reilly Media book: Programming PHP, 3rd Edition

Programming PHP, 3rd Edition - O'Reilly Media

O'Reilly Media book: PHP & MySQL: The Missing Manual, 2nd Edition

PHP & MySQL: The Missing Manual, 2nd Edition - O'Reilly Media

O'Reilly Media book: Effective Akka

Effective Akka
Avoid common mistakes when building distributed, asynchronous, high-performance software with the Akka toolkit and runtime. With this concise guide, author Jamie Allen provides a collection of best practices based on several years of using the actor model. The book also includes examples of actor application types and two primary patterns of actor usage, the Extra Pattern and Cameo Pattern.

O'Reilly Media book: HTML5 Pocket Reference

HTML5 Pocket Reference
Need help finding the right HTML5 element or attribute for your web page or application? HTML5 Pocket Reference is the classic reference that web designers and developers have been keeping close at hand for more than thirteen years. This fifth edition has been updated to reflect the current state of HTML5, including the HTML5 Candidate Recommendation, the emerging HTML5.1 Working Draft, and the living WHATWG standard.

crime story "Sebastian Bergman" from Sweden on public TV sender in Germany



As opposed to the reviewers on IMDb I like the stories (broadcast on 2013-10-13 and 2013-10-20 on ZDF.de) – although just as a simple-minded viewer.

(I am writing this in English, as all the articles referred to are in English, too.)

PacktPub book: Nokogiri by Hunter Powers

http://www.packtpub.com/article/nokogiri
In this article by Hunter Powers, author of the book Instant Nokogiri, you will get an insight about Nokogiri the open source library to parse XML and HTML in Ruby.

O'Reilly Media book: Oracle Essentials

http://shop.oreilly.com/product/0636920027737.do
Written by Oracle insiders, this indispensable guide distills an enormous amount of information about the Oracle Database into one compact volume, including a valuable overview of Oracle Database 12c. Ideal for novice and experienced DBAs, developers, managers, and users, Oracle Essentials walks you through technologies and features in Oracle’s product line, including its architecture, data structures, networking, concurrency, and tuning.

O'Reilly Media book: Learning R

http://shop.oreilly.com/product/0636920028352.do
Learn how to perform data analysis with the R language and software environment, even if you have little or no programming experience. With the tutorials in this hands-on guide, you’ll learn how to use the essential R tools you need to know to analyze data, including data types and programming concepts.

O'Reilly Media book: Microinteractions: Full Color Edition

http://shop.oreilly.com/product/0636920032496.do
It’s the little things that turn a good digital product into a great one. With this full color practical book, you’ll learn how to design effective microinteractions: the small details that exist inside and around features. How can users change a setting, or know they have a new email message? You’ll quickly discover how microinteractions can change a product from one that’s tolerated into one that’s treasured.

O'Reilly Media book: High Performance Browser Networking



How prepared are you to build fast and efficient web applications? This eloquent book provides what every web developer should know about the network, from fundamental limitations that affect performance to major innovations for building even more powerful browser applications—including HTTP 2.0 and XHR improvements, Server-Sent Events (SSE), WebSocket, and WebRTC.

O'Reilly Media book: DNS and BIND, 5th Edition

DNS and BIND, 5th Edition - O'Reilly Media

Saturday, October 19, 2013

running more than 1 blog from one WordPress site …

First I tried to employ WordPress on my Synology NAS for that, but that does not look trivial at the 2nd look.




Actually … – at the link(s) above they show an RSS feed link for a specific tag – maybe that's good enough for my purposes – maybe not.

My WordPress installation on my NAS:

  • Before I start fiddling in the way described for multi-site WordPress installations (patching various PHP files), I am tempted to upgrade to the very latest WordPress release available.
  • But of course with Synology DSM, you are a little restricted …
Looks like this is not my last and successful attempt to get going with WordPress.

Facit: It works for simple purposes, but in my situation (blogging at least separately in English and in German) it's not yet for me. With blogger.com it's rather easy to have separate blogs. And if you are cautious enough, particular ones can really be considered as anonymous.

Update …:
I assume, I have more flexibility, if I install WordPress on my web space at shuttle.de rather than on my NAS. It's Debian there.

Update 2013-12-25:

I am not sure, whether I will go for a "sub-domains" (AKA domain-based) or for "sub-directories" (AKA path-based).
I am using "sub-domains" with blogger.com so far, but certainly only because there was no other option.
I assume, "sub-directory" will cause not as much Apache fiddling. Just "jochen.hayek.name/blog-en" and "jochen.hayek.name/blog-de" and so forth to be set up (more or less) separately …

Update 2013-12-25:
  • http://codex.wordpress.org/Create_A_Network
  • unpack the tar.gz into subdirectory wordpress
  • add the line mentioning WP_ALLOW_MULTISITE as descibed within "Create A Network"
  • visit the readme.html of my wordpress subdirectory in a browser and do as described there

Friday, October 18, 2013

O'Reilly Media book: DNS & Bind Cookbook

DNS & Bind Cookbook - O'Reilly Media

my DNS provider helped me delegating a subdomain of one of my domains to DYN-DOT-COM

https://www.united-domains.de

There is not a web GUI way to configure that, but when I asked them over the phone, they just asked me to give them the details, and the task got accomplished within less than 2 hours.

Now I am able to reach my home network with a really nice FQDN.

Next steps:

  • blogs are run "by myself at home" (WordPress), no longer by blogger.com i.e. Google
  • I can tell you individual photo album URLs pointing to my NAS at home – and also music album URLs etc – this has been long waited for
  • Synology has a rather interesting photo album blogging service running on their NASs
  • I can have my own network reachable wiki "at home"
Yes, I know, if my NAS's intrusion detection is too weak, than …

Thursday, October 17, 2013

added a section on "XCOFF-based Unix-like systems" at the article on "dynamic linker" on the English wikipedia

A long PATH… makes the OS …
  1. "… access the disk quite often, hence there is a lot of disk I/O" – do you agree?
  2. "… compute a lot of …, hence a high CPU load" – do you agree?
I got involved in a rather "controversial" discussion on that. I voted for (1). What are you voting for?

started the article on LIBPATH at the English wikipedia

https://en.wikipedia.org/wiki/LIBPATH

I have no idea for how long it will survive the storms on en.wikipedia.org. I still just felt like I really should start it.

On AIX (apparently with some OS/2 ancestry) it means basically the same as LD_LIBRARY_PATH elsewhere.

Wikipedia:Redirect - how to deal with a wikipedia "redirect"

https://en.wikipedia.org/wiki/Wikipedia:Redirect

https://en.wikipedia.org/wiki/LIBPATH had gotten redirected to https://en.wikipedia.org/wiki/CONFIG.SYS#LIBPATH, but LIBPATH is a meaningful environment variable on AIX as well. (There it means basically the same as https://en.wikipedia.org/wiki/LD_LIBRARY_PATH.) So I wanted to create a disambiguation article for LIBPATH instead of the "redirect thing". That article helped me doing so.

Wednesday, October 16, 2013

long PATH, LD_LIBRARY_PATH, … – what kind of performance impact do they have?

A long PATH… makes the OS …
  1. "… access the disk quite often, hence there is a lot of disk I/O" – do you agree?
  2. "… compute a lot of …, hence a high CPU load" – do you agree?
I got involved in a rather "controversial" discussion on that. I voted for (1). What are you voting for?

I posted this issue at http://www.unix.com/shell-programming-scripting/238465-long-path-ld_library_path-libpath-what-kind-performance-impact-do-they-have.html as well.

"Lexical File Names in Plan 9" or "Getting Dot-Dot Right" (an article on symlinks in Unix)

http://www.cs.bell-labs.com/sys/doc/lexnames.html

An article on symlinks in Unix.
ABSTRACT
Symbolic links make the Unix file system non-hierarchical, resulting in multiple valid path names for a given file. This ambiguity is a source of confusion, especially since some shells work overtime to present a consistent view from programs such as pwd, while other programs and the kernel itself do nothing about the problem.
Plan 9 has no symbolic links but it does have other mechanisms that produce the same difficulty. Moreover, Plan 9 is founded on the ability to control a program’s environment by manipulating its name space. Ambiguous names muddle the result of operations such as copying a name space across the network.
To address these problems, the Plan 9 kernel has been modified to maintain an accurate path name for every active file (open file, working directory, mount table entry) in the system. The definition of ‘accurate’ is that the path name for a file is guaranteed to be the rooted, absolute name the program used to acquire it. These names are maintained by an efficient method that combines lexical processing—such as evaluating .. by just removing the last path name element of a directory—with local operations within the file system to maintain a consistently, easily understood view of the name system. Ambiguous situations are resolved by examining the lexically maintained names themselves.
A new kernel call, fd2path, returns the file name associated with an open file, permitting the use of reliable names to improve system services ranging from pwd to debugging. Although this work was done in Plan 9, Unix systems could also benefit from the addition of a method to recover the accurate name of an open file or the current directory.

O'Reilly Media book: X Power Tools

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

O'Reilly Media book: Linux Server Hacks, Volume Two

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

O'Reilly Media book: Linux Annoyances for Geeks

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

Sunday, October 13, 2013

FAQ: what USB speakers and DACs do Synology products support?

Friday, October 11, 2013

DVB-C (and DVB-T2/-T) for my Synolgy NAS "diskstations"

It needs the following software:

    These two mentioned diskstations are compatible with these two DVB-C USB connectable devices:

    This DVB-T2 /-T/-C USB connectable device would be my favourite, if it were supported by dvblogic for the NAS-s mentioned above and also for the Raspberry Pi:

    Q: "Catmatism"? A: just opposite of Dogmatism -"Accepting the changes without being dogmatic"

    Urban Dictionary: Catmatism

    A person who adopts a positive and revolutionary changes accordingly without being stubborn or stereotyped, is supposed to follow Catmatism. (sp?)

    Wednesday, October 9, 2013

    displaying files (on a UNIX command line), each file together with its names

    displays each file with its name before its content:
    $ head -999 file-a file-b file-c

    displays each file with its name before each line of its content:
    $ pipegrep '' cat file-a file-b file-c

    Search the web for pipegrep, if you are interested in it! It is written in one word.

    how to easily display a base64 encoded file

    I wondered, how I could achieve that on various Unix platforms, and I ran the following command on my Linux box:

    $ man -k base64
    base64 (1)           - base64 encode/decode data and print to standard output
    MIME::Base64 (3pm)   - Encoding and decoding of base64 strings

    Right the utility base64 (beloning to GNU coreutils) would do it, if it were broadly available; on AIX you can't expect GNU coreutils to be installed.
    The MIME::Base64 man page shows a nice perl one-liner making use of a perl module, which is rather likely to be installed:

    $ perl -MMIME::Base64 -ne 'print decode_base64($_)'

    TidBITS Publishing e-book (only): Take Control of 1Password

    Take Control of 1Password:
    Speed through Web logins with 1Password 4!
    Remembering and entering Web passwords is both difficult and insecure, but it doesn't have to be that way, thanks to 1Password, the popular password manager from AgileBits. In this ebook, Joe Kissell brings years of real-world 1Password experience into play--plus many hours with the 1Password 4 for Mac beta--to explain not only how to create, edit, and enter Web login data easily, but also how to autofill contact and credit card information when shopping online, audit your passwords and generate better ones, and share your passwords with key people and among multiple devices. Joe focuses on 1Password 4 for the Mac, but he also provides details and directions for the iOS, Windows, and Android versions of 1Password.
    You'll find expert advice on these topics:
    Meet 1Password: Set your master passcode and make first-run configuration decisions. Explore usage strategies for 1Password on your Mac, PC, iOS device, or Android handheld, and understand the different components of the software on the different platforms. Get lots of ideas for how to share your vault (or vaults!) among your devices and with other people.
    Master logins: In 1Password, a typical login contains a set of credentials used to sign in to a Web site. Find out how to create logins, sort them, search them, tag them, delete them, and more. You'll especially find help with editing logins. For example, if you change a password from dragon7 to eatsevendragonsforlunchatyahoo, you'll want to incorporate that into its login. Or, use 1Password's password generator to come up with complex passwords, like dGx7Crve3WucELF#s.
    Understand password security: Get guidance on what makes for a good password, and read Joe's important Password Dos and Don'ts. An advanced topic later in the ebook covers how to perform a security audit in order to improve poor passwords quickly. (For Joe's full advice on passwords, read Take Control of Your Passwords.)
    Go beyond Web logins: For a lot of people, a primary point of 1Password is to speed the process of signing in to Web sites. But 1Password can do much more. Learn about storing and autofilling contact information (for more than one identity, even), and your credit card number and security code. You'll also find advice on storing passwords for password-protected files and encrypted disk images, plus ideas for keeping track of confidential files, private diary entries, scans of important cards or documents, and more.
    You'll also discover the answers to key questions, including:
    • What are the main changes between 1Password 3 and 1Password 4?
    • In addition to 1Password, should I use my Web browser's password, contact, or credit card autofill feature? What about Apple's iCloud Keychain?
    • What is the fastest way to get 1Password to sign me in to a Web site?
    • My login item used to sign me in, but it stopped working. What should I do?
    • I made a long, random password for my bank account, but it wasn't saved in the login item! Where can I find it?
    • How can I use one username and password with multiple Web sites, like one Apple ID for both iCloud and the online Apple Store?
    • What if I need to access my 1Password data from another person's computer?
    • How can I speed up Web logins and filling in shopping cart info with 1Password in iOS or Android?
    • Is it true that I can initiate 1Password login items from keyboard launcher utilities like LaunchBar, Alfred, and Quicksilver? (Hint: the answer is yes!)

    O'Reilly Media book: OS X Mavericks: The Missing Manual

    http://shop.oreilly.com/product/0636920029069.do:
    With Mavericks, Apple has unleashed the most innovative version of OS X yet—and once again, David Pogue brings his humor and expertise to the #1 bestselling Mac book. Mac OS X 10.9 brings more innovations from the iPad and adds a variety of new features throughout the operating system.

    O'Reilly Media book: Windows 8.1: Out of the Box

    http://shop.oreilly.com/product/0636920032533.do:
    Get a real feel for Windows 8.1 with a wealth of tips in this step-by-step guide. After using Windows 7 or XP, learning Microsoft’s latest operating system takes some adjustment. Never fear. Windows expert Mike Halsey starts with the basics and then takes you through the trickier parts of Microsoft’s latest operating system.

    Wednesday, September 25, 2013

    O'Reilly Media book: Unix Power Tools, 3rd Edition (2002)


    a couple of nice utilities from their sample code:
    • rcsgrep, rcsegrep, rcsfgrep - check out files and grep/egrep/fgrep them – is there somthing similar for subversion etc.?
    Update 2013-10-23:
    Derived cvsrevs from rcsrevs, and cvsgrep from rcsgrep. This is really nice!! Imagine this:
    $ cvsgrep -a SEARCHME files

    do you remember "pipegrep" from a rather old Camel Book?

    [Chapter 27] 27.13 More grep-like Programs Written in Perl (an outdated but still useful "Unix Power Tools" edition somewhere on a web-server discusses it)

    The pipegrep program greps the output of a series of commands. The difficulty with doing this using the normal grep program is that you lose track of which file was being processed. This program prints out the command it was executing at the time, including the filename. The command, which is a single argument, will be executed once for each file in the list. If you give the string {} anywhere in the command, the filename will be substituted at that point. Otherwise the filename will be added on to the end of the command. This program has one option, -l, which causes it to list the files containing the pattern.

    Follow the above link for a nice example!

    I remembered the pipegrep utility today, because I came across a task …

    Update 2013-10-17:

    O'Reilly Media book: Oracle PL/SQL Programming

    Oracle PL/SQL Programming:
    Considered throughout the Oracle technology community to be the best Oracle PL/SQL programming book available, this guide is the definitive reference on Oracle’s powerful procedural language. Like its predecessors, this sixth edition covers language fundamentals, advanced coding techniques, and best practices for using PL/SQL. Thoroughly updated for Oracle Database 12c.

    GNU Coding Standards: Option Table (command line options)

    GNU Coding Standards: Option Table

    Wednesday, September 18, 2013

    how to let GNU Emacs "Untabify Upon Save"?

    EmacsWiki: Untabify Upon Save

    There are colleagues, that don't want to see tabs in scripts sources, that I edited.

    Apparently there isn't a nice switch saying, that there shouldn't be tabs in a certain file.

    Tuesday, September 17, 2013

    Greg Kroah-Hartman: booting a self-signed Linux kernel

    booting a self-signed Linux kernel - Linux Kernel Monkey Log

    Procedures for how to boot a self-signed Linux kernel on a platform so that you do not have to rely on any external signing authority.

    Sunday, September 15, 2013

    my new UPS: APC BE700G-GR


    • Now my Synology DS213+ (NAS) gets its power from the UPS, and the UPS also controls USB-wise, when the NAS goes to "Safe Mode". For the USB-connected NAS, this is "local UPS support". This Synology device is now the "Synology UPS server", that controls, the remaining Synology DiskStations powered by the UPS.
    • My Synology DS112+ (NAS) uses the DS213+ as "Synology UPS server".
    It feels well, to have your NAS-s powered by your UPS.

    an "Erich Fromm" page on Facebook in English

    www.facebook.com/pages/Erich-Fromm/25431672903

    UPS on the Synology wiki

    User Reported Compatible Uninterruptible Power Supplies - SynologyWiki

    Tuesday, September 10, 2013

    my latest GNU Emacs on OS X: Emacs Daily Build 2013-09-11

    Emacs Daily Build 2013-09-11 »:
    Universal Binary built on Mac OS X 10.6.8, 45.89 MB.
    See the differences from the last build.

    yet another Perl power tool: ack - grep-like text finder

    ack - grep-like text finder - metacpan.org - Perl programming language

    added "Perl Power Tools" to the PPT "disambiguation page" on the English wikipedia

    en.wikipedia.org/wiki/PPT

    I am curious, how long this entry will survive there. It's actually not referring to an existing article on the Perl Power Tools. It's just meant to tell "the reader", hey, there are these nice Perl Power Tools out there, and they also get abbreviated as PPT.

    Well, yes, I could create a wikipedia stub page, but it would only have these 2 links:

    And maybe some short text with like 30 words from the first of these 2 links.

    But for how long would this stub article survive on wikipedia?

    the Unix date command: yesterday, tomorrow, nanoseconds

    GNU's date lets you specify yesterday, tomorrow, Sunday, … to be displayed following the format specification you supply. And (if available) you can also get nanoseconds displayed. Please do not complain, that precisions between nanoseconds and seconds are missing!

    Maybe on your UNIX flavor computer GNU date is installed as gnudate or gdate (just like: gnutar, gtar, …).

    Monday, September 9, 2013