Skip navigation.
Home

SPL, new generation compiler, intro

Glassbeam SPL Semiotic Parsing Language language is basically ETL
(Extract Transform Load) on steroids.

Not only does define ETL with multiple patterns to multiple tables, but
it also defines the searchability, aggregation, labels along with almost
every aspect of the user interfaces for dashboards, thresholds and graphs.

SPL is based on dividing logs into logical namespaces, parsing them into
tables using icons (which define what type of pattern should be used;

Account creation disabled

If there is a real (human) user, who wants an account on this site...

Please send me an email -- I'm tired of having to approve/reject hundreds of 'bot account requests every day
(not to mention rejecting link spam comments).

Debugging vs. logging

I, personally, consider the use of debuggers, with breakpoints and stepping through individual statements to be very much a waste of time... especially as languages have evolved to have expect/require, and even a drop into a REPL.

To borrow a quote of a quote from Log4J (or Log4cpp):

As Brian W. Kernighan and Rob Pike put it in their truly excellent book "The Practice of Programming"

Links

In addition to my blog pointyhair.com, there are a two other sites that may be of professional interest.

To Be Or Not To Be

7I find it interesting, that many people "need" to put me in a box called CTO or VPEng.

Reminds me of [ancient] Mork and Mindy, where a psychologist got miffed, when Mork successfully stuck a round peg in a square hole... ("how did he do it?" "I don't care... he ruined by block test")

  • A CTO dreams up technologies, solutions, has little constraints
  • A VPEng deals with processes, Quality, releases, schedules, mentoring
  • An Architect Designs systems (the more systems you know, the more choices for "the" right technology you have)

Mailbox conversion

Converting from uw-mailboxes (mbx) to Unix format (dovecot)

It took me by surprise how the mailbox formats had changed, when I switched to Dovecot which is the best IMAP/POP3 mail program, in my opinion. It handles large (enormous) mailboxes with many (hundreds of) users. Caching makes things go fast again.

Here is a simple bash utility, to take all users, and convert all mailboxes & folders.

cd /home
for u in *
do
if [ -d /home/$u/Mail ]; then
echo "User: $u"
cd /home/$u/Mail

Tools: What file system?

On Linux, you have a plethora of File Systems available.

Recently I was testing databases (MySQL, MariaDB) especially with ThreadPool against a Violin Flash Memory Array, and I forgot what file system the LUN was mounted (and formatted) as.

There are two ways to find out:

  • df -T (show mounted life systems, along with the FS type)
  • file -s /dev/xxx (show more details about a FS node)

Net tools

A set of internet tools, is available at otala.net/tools.shtml

  • Traceroute
  • Whois & JWhois
  • NSLookup
  • Ping
  • DNSWalk
  • NetStat
  • ENUM (e164.org phone number lookup)

More to come, as (if/when) I get time -- suggestions welcome

Weather station

I wanted to add a weather station to my home automation system for a number of reasons...

  • watering lawn (temperature, season, moisture, dew point)
  • weather (temperature, chance of rain)
  • historical (collect data over years)

In 2006, I bought the weather station WS2300 and integrated it in a number of ways.

  • I have a sizable MySQL database, so using the mysql2300 module, I stick weather data into the database every 10 minutes

Water the lawn if temperature exceeded 80 degrees

I read somewhere that you should do extra watering of lawn (after sunset), if the temperature exceeded 80° F during the day.

So, a really quick hack works like this:

A bash script
#!/bin/bash

TEMP="`/usr/bin/mysql -ss open2300 -e \"SELECT FLOOR(MAX(temp_out)) FROM weather GROUP BY (rec_date) ORDER BY rec_date DESC LIMIT 1;\"`"
if [ "$TEMP" -ge 80 ]; then
/root/water-on.exp
/root/water2.exp 120 1
/root/water3.exp 120 1
fi

Syndicate content