LOG

 

 Website (and computer related) Activities

   
Date

Tasks


2019


07/10
While not exactly a visual feast for the eyes...Star Trek was a great game in it's day. The TRS-80 version played nearly identical to the one running on my school's DEC PDP 11 minicomputer!
Star Trek  Star Trek
07/09
A little levity. You can't be serious...all the time! The Dancing Demon running on a emulated TRS-80...TRSDOS is the OS! A mere picture doesn't do this justice. In all seriousness this was cool in 1979 and early 1980s. Most of my schooling was in IBM mainframes where I would type COBOL and Assembler programs into a card deck. These cards would be read in with a card reader. Where they would be placed into a job queue. If you were lucky you might get back a listing on greenbar paper in a hour. We also had a DEC PDP 11/40...I think, which was interactive like the TRS-80. However it still was shared with other students. Your individual session was limited to 30 minutes.  I had a TRS-80 Star Trek game that played identical to the one running on the PDP. So the idea of having my own computer that I could use anytime I wanted was very cool.
07/08
Emulation of the TRS-80's more advanced TRSDOS [TRS-80 Disk Operating System that from the Radio Shack TRSDOS manual, I myself thought TRS was Tandy Radio Shack]. It was more powerful and had more features than the built-in ROM. It included Disk Basic which was more powerful than Level 2 Basic in the ROM shown below.
TRSDOS
07/07
Well continuing my stroll down memory lane...the TRS-80. My 1st personal computer bought for me by my parents while I was going to school to learn mini & mainframe computers. Way before the Internet, you had to be entertained by the computer itself and not social interactions and Likes! I spent many hours on my TRS-80. Anyway I discovered the xtrs TRS-80 emulator which seemed to work very well. However this screenshot on my Linux desktop is from another TRS-80 emulator derived from xtrs..sdltrs. This emulator allows for a larger screen display as shown here. Another feature it has over xtrs is cut & paste. Notice the massive 48K of storage. Actually I think mine might have had 16K. I hope to find my old programs [on cassette tape] someday and run the startrek program that I painstakingly typed in from a book, and a Yahtzee program I wrote myself someday. The startrek program ran the same as the DEC PDP 11 computer at my school. You would travel to various sectors attacking and defending against the Klingon's by firing phasers and photon torpedos, in stunning ASCII. Very cool at the time!
TRS-80
07/01
Slowly I'm getting the layout for my website, more like I want. The home page although not perfect is not bad...at least on the browsers/screens that I've tested on. It even looks good on my android phone. The main problem is that I never found a documented solution, and basically got it to work by trying a combination of things, without truly understanding why it works. Not the best way, I'd much rather be able to say I did this because. In programming if something doesn't work...I almost always understand why. The biggest change seems to be moving the footer in the html and adding overflow: hidden; to the css.

It seems that just about anything is possible because there are so many ways of doing things. Other ways to alter position are Grid, Flexbox & Bootstrap. However I managed to accomplish what I needed without using those.
06/06
I think I completed the PHP version 7 changes to dogs.php so moved to my website. This is central to my dog-size.com web site.
06/04 More adventures in PHP version 7. I think I completed the version 7 changes to my set of Birthday PHP programs so moved to my website.
05/31
Website work. Simplified overly busy index page.

PHP
I taught myself PHP and wrote some of the first programs on this site in December 2000 so they would have been Version 3 or 4 depending on how current my host was at the time. Interestingly enough Wikipedia begins their Early History on PHP with version 3 and 4. Up to today I have been using PHP 5.3 [the last version to work with my programs] so my old PHP programs will work. To say the least, PHP has come a long way in almost 20 years!

So I am finally going to tackle updating the programs to version 7. The latest official version is 7.3 I knew it needed to be done. My Webtrees installation helped push me, because it would complain, when I installed a new version about my long ago unsupported version of PHP.

The most efficient way for me to learn Version 7s ways is to install a local LAMP stack on my home computer, so that's what I did. Much better than the constant cycle of changing then uploading/testing which is necessary to get up to speed with something I haven't really done much with for 15+ years. My LAMP stack uses PHP Version 7.0.33.
05/28
Redoing my website, especially the home & about pages. Need to have them work equally well on desktop or smart phone screens. So I guess it's time to dive into CSS.
05/25
Decided to get on board kicking and screaming with version control and have been working with git for a few weeks. Also integrating it with VS code. One of the biggest things for me to realize is that every program should have it's own directory. I use to have a Python 2 folder and Python 3 folder and Julia folder and just dump most every program into that folder...this doesn't work well for git. It's a slightly different way to think. I still don't understand so much...but it's a start! Now everyone can see my coding flaws, code that I might have written better had I thought other people might see it. All of these programs were written before git was a thought. Many time I code a section and get it working, and intend to go back and improve it later...but rarely do. Computers are so fast today that they often power through inefficient code and you forget about the inefficiencies, especially for small tests.
03/29 I said [3/4/2018] I wasn't going to do much more to my greenbar program but I did add holes to the side of the listing. Here once again is a Before and After GnuCOBOL listing. Here's one in blue, I never saw this color in our shop...however I know they exist.  Not perfect, but...not bad!
03/28
Been learning Python's XML handling. Very useful. I like how easy it is to get to nested tags that may or may not exist.
I have been rewriting my Diaro [android diary app] file export [to XML format] processing program, to use  this method.
Why not use this tested [probably by thousands and maybe millions of Python Programmers] library.
03/20
Well I finally got around to timing My Julia rewrite of a Python program (see 11/13/2017).
Wow...from noticabably slower 6 months [see my comments 9/18/2018] ago to much faster 19 min vs 1hr 15min.

    bill@billb-MS-7B79 ~/Mystuff/Julia $ ./runIt.sh
    Wed Mar 20 16:30:13 EDT 2019
    Records to create 1000000

    5000 Written 995000 remaining
    10000 Written 990000 remaining
    15000 Written 985000 remaining
    20000 Written 980000 remaining
    ,,,

    985000 Written 15000 remaining
    990000 Written 10000 remaining
    995000 Written 5000 remaining
    1000000 Written 0 remaining

    real    19m13.454s
    user    6m4.348s
    sys    13m9.264s
    Wed Mar 20 16:49:26 EDT 2019
    High Performance MPEG 1.0/2.0/2.5 Audio Player for Layer 1, 2, and 3.
    Version 0.3.2-1 (2012/03/25). Written and copyrights by Joe Drew,
    now maintained by Nanakos Chrysostomos and others.
    Uses code from various people. See 'README' for more!
    THIS SOFTWARE COMES WITH ABSOLUTELY NO WARRANTY! USE AT YOUR OWN RISK!

    Playing MPEG stream from Loud_Alarm_Clock_Buzzer-Muk1984-493547174.mp3 ...
    MPEG 1.0 layer III, 128 kbit/s, 44100 Hz joint-stereo
    ^Z
    [1]+  Stopped                 ./runIt.sh
    bill@billb-MS-7B79 ~/Mystuff/Julia $


So what did I do with these million records?
Reran my GnuCOBOL sort to report program See 3/14.
Sort one million records by State and city print totals at a state control break in less than 3 seconds.
bill@billb-MS-7B79 ~/Mystuff/COBOL/progs $ cobc -x sort04.cob
bill@billb-MS-7B79 ~/Mystuff/COBOL/progs $ time ./sort04
Records read 1000000
End of program!

real    0m2.798s
user    0m2.676s
sys    0m0.084s
bill@billb-MS-7B79 ~/Mystuff/COBOL/progs $
03/17
It seems GnuCOBOL's supposed ASCII/EBCDIC builtin conversion doesn't work. So I wrote my own. Verified EBCDIC output with my Julia ditto [named after the IBM utility] program.
03/16
GnuCOBOL has an option to create a xref listing. So I again modified my Python 3 greenbar program to do page breaks when it sees the form feed, because GnuCOBOL put them there. For non GnuCOBOL output files I count lines and manually goto a new page!
Here is an example of a GnuCOBOL listing file PDF created by my greenbar program.
My greenbar program works but is very kludgly...not the best example of my work.
03/14
Wrote control break GnuCOBOL program. Sort on State, City an do a control break on State printing totals at the break.
03/13
Add an random amount field [0.01-100.99] to my Julia program that generates real "looking" customer data. I did this so I could practice numeric calculations in GnuCOBOL.

Wrote GnuCOBOL program that uses the COBOL SORT output to printer, with a heading and final total for a amount field in the input.
03/12
Modify my Python 2 greenbar program to Python 3, specifically to print GnuCOBOL programs or output, for that nostalgic IBM look.
Here's a very simple GnuCOBOL example.
03/11
Another more advanced  GnuCOBOL program that uses the COBOL SORT. Pretty nice COBOL!
Sort was so fast on my first test of 5000 records, that I reran on 50,000 records. Still literally ran in the blink of an eye. So I timed it.


bill@billb-MS-7B79 ~/Mystuff/COBOL/progs $ time ./sort01 [
GnuCOBOL program]
real    0m0.107s
user    0m0.064s
sys     0m0.040s
bill@billb-MS-7B79 ~/Mystuff/COBOL/progs $
 

Input file (sample) looks like...
4016772724115827  4BFDestiny        Bryanna        Hamende             1984-10-118941 E 61 Dr             East Berlin         PA17316
4866213809365608  4CFAlicia         Kendal         Chabala             2000-04-229268 W 91 Way            Minonk              IL61760
4447208205483581  2DMBrayden        Zayne          Muhammad            1991-09-26231 S 75 St              Sulphur             LA70664
4831920901606091  5EMNicholas       Tony           Hochevar            1972-05-197275 NW 179 Av           Pacolet             SC29372
4866500665561571  1HFAshlyn         Cynthia        Mccaughan           1969-05-306799 N 171 St            Questa              NM87556

Sorted (last name, first name) output file (sample) looks like...
Aaberg              Kyler                         1926-11-13
Aagaard             Jalen                         2000-06-21
Aagesen             Keaton                        1951-10-08
Aakhus              Alejandro                     1944-01-11
Aalbers             Julius                        1954-04-20

03/10
Decided to kick the tires of GnuCOBOL, pushing it a little harder.
Wrote a little more advanced  GnuCOBOL simple array program that Uses: REDEFINES, OCCURS, VARYING.

I have previously wrote a few programs to read/write variable and fixed length records.
Variable length records are pretty much regular ascii files (perhaps delimited with a comma) with lines terminated with a line feed on linux.
02/13
More work on my Julia X-Plane scenery organizer. Created a SQLite ICAO airport database [54,000+ records] from a csv file I found on github. The Julia SQLite handeling has changed since my last use, it now also requires dataframes! See 10/12/2018 where I talked about dataframes.

Because X-Plane has no requirements on scenery file, file names, it seems, at best an organizer can only help organize a file. If some developer creates a library and decides to name it bird then how can an organizer intelligently know it's a library? If Laminar would simply require file names to follow a standard it would be much easier. At any rate it was a good Julia exercise.

Reran my Julia program, that used SQLite to create real "looking" customer data. Huge SQLite improvement in speed still a little slow on initialization. But once in main loop my gut feel is it's now faster than Python. Contrast that to what I said on 09/18/2018.
01/29 Well Julia 1.1.0 came out on 01/22 and good news...it now can execute Julia code within the very cool MS VS Code editor!
Started writing X-Plane 11 "scenery_packs.ini" ordering program. There is an X-Organizer MS-Windows only program that does this. Wow I already forgot so much basic Julia syntax. And my notes were severely lacking basic "if" statement details.

    Embarassing...I don't even want to admit how long I spent trying to figure out what was wrong with the following line...

If ln[1:13] != "SCENERY_PACK "
which caused this error...
'ERROR: LoadError: syntax: extra token "ln" after end of expression'

Long story short...'If' should be lowercase!!!!


02/13
2018
10/25
A return to mainframe emulation using hercules running in Linux. I have four 3270 terminal's come up positioned this way with a title bar describing the guest I run there, OPERATOR [starts in the 1st screen automatically], MAINT, DOS1 & DOS2. As you can see I am running 2 DOS guests [DOS1 ran a COBOL compile. DOS2 ran a simple LSERV] and I have a fullscreen edit in MAINT's account of a VM directory. I can submit DOS jobs to either DOS, from MAINT. Or I can submit the jobs directly from Linux [thus taking advantage of superior editors] if I want.

VM running 2 DOS guests

10/12
Thanks to Julia I finally decided to dive into Python 3. With many old libraries converted to Python 3 and with Python 2's impending demise...it's time.

Note: In the passing couple weeks since this date I've written Python 3 programs using PIL, Beautiful Soup and Pandas. I got into Pandas because I kept reading about data frames in Julia and I wanted to learn about the concept. At 1st it sounded intimidating, until I learned it's simply a way of looking at data like a spreadsheet...rows and columns.
09/24
Rewrote a program in Julia, that I had written in Python 2, that I never got working. It was a seemingly simple file rename. I went through the same process of building the before and after file rename strings first, and after they looked right. ran the program. It was probably a stupid mistake on my part. However I know I wrote Python rename programs in the past, but for whatever reason it didn't work in this situation. Perhaps the directory was nested too deep or other such nonsense, at any rate it didn't work. And I tried 2 different commands in Python...and both failed...see below!
        os.rename(orgName, nName)
        shutil.move(orgName, nName)

However in Julia I simply used the mv(src,dest) command that works like the linux "mv" command...and it worked as expected!
09/22
More on Julia!
First off!
For a test, I stripped out all the SQLite code from my slow running program and, unscientifically IMHO it's pretty fast. The "using sqlite" statement alone takes ~2 seconds. A run for 1,000,000 records, including all the other random # generating stuff for dates, street address, name prefix/suffix and account mod10 check for every account # AND writing each record to disk, took 19 seconds.

OK...Next topic!
Wrote a Julia directory processing program. Very intuitive if you're familiar with the linux file system console commands!

OK...Next topic!
Using Python modules in Julia. Seems straight forward...

HOWEVER IT IS NOT WORKING FOR ME!!!!
Trying to use the Python Imaging Library (PIL)

............. Python .............
Python 2.7.12 (default, Dec  4 2017, 14:50:18)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import Image    <<< success
>>>                 <<< No errors!

............. Julia .............
julia> ENV["PYTHON"] = "/usr/bin/python"
"/usr/bin/python"

julia> using PyCall

julia> @pyimport Image
ERROR: PyError (PyImport_ImportModule) <class 'ModuleNotFoundError'>
ModuleNotFoundError("No module named 'Image'",) <<<<<<<<<<< WELL IT'S THERE AS CAN BE SEEN ABOVE!

Stacktrace:
 [1] pyimport(::String) at /home/bill/.julia/packages/PyCall/rUul9/src/PyCall.jl:486
 [2] top-level scope at /home/bill/.julia/packages/PyCall/rUul9/src/PyCall.jl:536

julia>

OK...Next and final topic!
Found a way [better than wall clock] to time program execution!
However it should be noted that the "canonicalize" command below, as pointed out on web page I found on this topic, is NOT documented in the 1.0 docs.

--- Program Timing ---

strTim=now()
println("Start ",strTim)

[program code here]

endTim=now()
println("End   ",endTim)
unixMs=endTim-strTim
println("Elapased ",canonicalize(Dates.CompoundPeriod(unixMs)))

09/18
The below comments about Julia's slowness were my thoughts on this day, however see the above date 09/22 for a likely reason...SQLite! This probably nullifies much of what I say here.

Well I have to be honest. I pretty much finished my rewrite of my Python program in Julia. It is pretty much "functionally" the same, and it is noticabably slower. That wasn't expected from a language that's almost as fast as C. There also is a very noticeable pause at the start of the program which may be due to SQLite connections. Being that I basically retrofitted Python code into the Julia program...perhaps that is the, or a problem. The SQLite functionality is probably being handled 2nd hand because when I installed the SQLite module, it required Python. Also this was mostly text processing which is NOT Julia's claim to fame.  I'm sure it would be faster if I wrote it after working in Julia for a few months. However I also kind of expected with the supposed great speed, that it would make up to some extent, my lack of Julia skills.

The Python took ~1hr 15min to generate one million records. And I was going to time the Julia program in the same sinerio. I did a test of both programs on 10,000 records and as I noticed the Julia program was visibly noticeably slower. I output a counter every 500 records. So there is really no need to test on a larger number because it would only further prove the point.

Also I should point out that I seemed to hangup a few times on the understanding of the use of globals AND the try/catch/finalize statements. There are still questions in my mind of why at times it seemed like I needed to define a variable outside a loop with a global and sometimes not. Also, at least in my mind I had two try/catch/finalize setup in basically the same way and I decided I was using it wrong because one wasn't working and I needed to use the catch  portion, which caused it to behave as I expected. However the other try/catch/finalize block, which to my mind did the same thing...was working without the catch. Is this my not understanding the Julia's rules? Probably! Or is there a Julia problem. I say this because I filed 2 bug reports ("segmentation fault" and "Illegal instruction") that caused Julia to crash and dump, and the try/catch/finalize block contained the code in both cases that caused the error. You know I'm a beginner and I'm more likely to do something terribly wrong that an experienced programmer wouldn't. It's probably hard for a developer to code really bad as opposed to a newbe. Kind of like asking a great singer to sing bad.

However this is version 1 AND I think I could jump back into the code after many months and understand it as opposed to remembering all of Pythons quirks. It sounds like I'm making excuses for Julia, and...I guess I am. I still really like it, because in my case it works more like I think than Python which I also really like. Despite all this I think I will probably choose Julia for many future projects, because it will get better over time AND I will become a better Julia programmer too.
09/14
I'm starting to sound like a Julia fan-boy. Any-who...I was rewriting in Julia a program I had previously written in Python, and I found this code from Python of where I wanted to generate a random month from 1-12

mn=random.randrange(1,12)

I ran it, and the months at first glance looked valid...and they were!
However it wasn't until later that I realized there weren't any month 12s
Actually, if memory serves, I don't think I noticed until after I loaded the records into a SQLite database and started doing date calculations on the records

Why weren't there any month 12s? Because the upper range DOES NOT INCLUDE THE UPPER RANGE!
It needed to be coded like so...

mn=random.randrange(1,13)  # generate a random month from 1-12 in Python

On the other hand the code to generate random months in Julia...looks like this!
mn=rand(1:12)    # generate a random month from 1-12 in Julia

It sounds like I'm bashing Python...I'm not...well maybe I am a little.
I have written many many useful Python programs, and if you code in it often, you probably remember these things. Now maybe there is another Python library or module that is more intutive, IDK, I'm sure I just used the 1st thing I saw to create random numbers.
However I often find Python quirky!

In my case, my brain...so far, clicks better with Julia, than Python...YMMV!
It's as if Julia fixed many of the things that bugged me in Python. I know, fixed is the wrong word, because it's not broke.
09/12
Played around with generating random numbers in Julia.

Not a hugely important topic, however it leads me to a complaint about the documentation! This was originally a rant but I toned it done after considering this is Version 1.

I've noticed that many examples describe using what appears to be a built-in function...when in fact, in this case, a "using Random" MUST BE supplied, but NOT shown in the example.
For example trying out random numbers...I came upon this code (2 lines) [which they actually show successfully executing in the REPL...

rng = MersenneTwister(1234);
rand!(rng, zeros(5))

BUT IT DIDN'T SUCCESSFULLY EXECUTE IN MY REPL!!!!!!!!!!!!!!!!!
My REPL responds with...
ERROR: UndefVarError: MersenneTwister not defined

WTH? What is required? What is missing?...

I SEE EXAMPLES LIKE THIS TIME AND TIME AGAIN!

%%% S O L V E D %%%
I guess it boils down to my misunderstanding of the documentation, because earlier they describe the function, but don't show the "using Random" statement in the example...
Random.rand! — Function.

HOWEVER WHY WOULDN'T YOU JUST SHOW the  'using Random' statement to the 2 lines of code in the example?

Example code [2 lines]...doesn't work!
rng = MersenneTwister(1234);
rand!(rng, zeros(5))

Code with 1 extra required line[3 lines]...Works!
using Random
rng = MersenneTwister(1234);
rand!(rng, zeros(5))

Julia veterans would understand that "Random" was was not built-in AND beginners could execute the example successfully!!!!

But Nooooo...I have to type it in and have it fail then spend time figuring out why it failed!!!!!!!!!

Like anything new, it's harder to learn in the beginning, documentation and tutorials improve over time.
09/11
Well for me to actually do many useful things I need a database. And in Python that database, often for me, has been SQLite. Also I have a lot of useful...to me, SQLite databases. Surprisingly it was relatively easy for Julia to use SQLite.
09/10
Wrote my 1st "real" Julia program. It reads the android Diaro [Diary type program], one XML file, and outputs Linux Redbook files, many files in the form yyyy-mm.txt containing day entries for that month. Already had a good portion of the program written in Python, but figured this would be a good program to learn about Julia. The biggest, but not only, problem I had was the error messages always seemed to point to the beginning of the main loop containing the problem code If there were 100 statements in the loop that sometimes made it hard to zero in on a specific line. I also tended to think in Python. Another problem was the sometimes necessity for the "global" keyword. It hung me up once even though I was aware of it..."What do you mean the variable isn't defined? It's right there!".

So it goes, the only way to really learn a language is to actually code in it! Not surprisingly these simple early programs take a unreasonably long time. Only after coding in a language a while will you start to "think" in that language. At the same time you begin to develop a collection of programs written in your style to help you more quickly write new programs.
09/07
Writing more Julia programs...specifically file I/O
I had read about it before, but string concatenation got me a few times today, must use '*' and NOT '+'
09/03
Really enjoying Julia. Although geared towards scientific, data Science and numerical computing, it's also, I've read, a great general purpose language. I'm not a data scientist so my intent lies more in line with general programming. Doing things I might have used Python for.

Thing's I like!

  • Very Python like!!!
  • Integrates very well with a also recently discovered "almost IDE"...Visual Studio Code (see below)
  • A very cool shell called the REPL, [Read/Evaluate/Print/Loop]. Kinda like Python's IDLE.
  • Almost as fast as C! A scripting type language almost as fast as C? That's what they say!
    It is said the developers wanted a language that would be great for prototyping and yet still fast.
    They referred to the old two program method of perhaps prototyping in Python then undertaking a potentially lengthy rewrite in C for speed. (see below)
    *Julia joins C, C++, and FORTRAN as high-level languages in which petaFLOPS computations have been written.
  • *Designed for parallel and distributed computing
  • *Efficient support for Unicode, including but not limited to UTF-8
  • Can use Python's libraries!
  • No forced indentation!
    Yes...I know, proper indentation is a good habit.
  • Slices like Python except better IMHO (see below)
* Wikipedia reference

Now I've accomplished a lot with Python, and think it's a great language, but I guess because I don't use it every day I frequently have to rewrap my head around how Python handles slices. Julia...to my tiny brain makes more sense. Here is what I wrote elsewhere, as you can see my rant about Python slicing took many lines where as my thoughts on Julia slicing took 3 lines!


Python vs Julia slicing

The  P Y T H O N  way .  .  .

Python slicing FREQUENTLY messes with my brain!

I guess because I don't code Python everyday it's often a hangup

I accept that some computer genius long ago decided that the 1st position
in an array is zero...even if it doesn't make sense

I mean really, if a line of people in a bank are waiting for the next available Teller
Is the 1st person in line, the zeroth person? You can't even say it where it sounds right
Nooooo...The 1st person in line is the 1st person or person number one

However the second position in Python slicing convolutes "relative to zero" ALL TO HELL!!!

Givin' a string ABCDEF
IF a[0]= A AND a[5]= F which it is in Python
I'd expect that a[0:5] would be 'ABCDEF'
But...NOOOOOOOOOOO!
a[0:5]= ABCDE

HOW DOES THIS MAKE SENSE???

Remember in a Python slice [x:y]...
x is relative to zero...AND
y is relative to zero minus one

Yeah... That makes sense...NOT!!!

Sorta like "I before E except after C"...except worse. Relative to zero except when the second slice is used in Python...which is relative to zero minus one.


The  J U L I A  way  .  .  .

IF a="ABCDEFGHIJKLMNOPQRSTUVWXYZ"
And a[1]=A AND a[6]= F which it is in Julia
Then a[1:6] unlike Python...is as it should be ABCDEF


I know...I know. It's just the languages syntax. Thousand's perhaps millions of people write Python everyday without problem with this, because they remember the syntax. Maybe it's just me? At any rate it doesn't take any effort on my tiny brain to make sense of Julia's slice handling.

Speed
I randomly looked at a few articles Julia vs [Python, Matlab, R, etc.] and results for Julia weren't always so superior. To be fair most of the comparisons dealt with a pre version one language, being that it just turned v1.0. Also I'm no data scientist or numerical computing expert.

No forced indentation!
Yes proper indentation is a good habit. My problem isn't indentation per say. It's probably more of a problem because of my habit of sometimes using spaces and sometimes using tabs! I prefer tabs usually but sometimes a tab seems too big. Once again I know...that can be adjusted!
I mentioned it before...it doesn't look OOPish!! (Although that will probably change when they decide to make it "Better").

Visual Studio Code

I must take a moment to comment further on Visual Studio Code or VS Code by Microsoft...yes Microsoft! I never would have believed I'd run a MS product on my Linux computer, however it deserves a mention.

VS Code can be used for many languages. I guess I have to give it serious consideration, seems very nice, free and open-source. I was considering another highly touted editor...Sublime Text 3. But they want $80 for it. $80? That seems more inline with 1980s pricing relatively speaking. F that! I might have considered $30. In a short amount of time VS Code, has become very popular, more so than Sublime Text...competition is good. Greed is bad...$80 for a text editor...HA! Stackoverflow Developer Survey Results 2018 ranked Visual Studio Code #1 in Development Environments and Tools, Sublime Text ranked #4...ha ha, try and compete with Microsoft you greedy bastards! I'm not against a small company charging a "reasonable" amount for a quality product. Reasonable of course is subjective, but $80 for an editor? With the introduction of VS Code, there's a good chance I'll never buy Sublime Text even if they reduced the price. I know...they're not loosing any sleep over loosing a cheap bastard like me!  With Microsoft behind VS Code, it will probably quickly get much better. I have to hand it to MS, they always had good developer tools...IMHO.

Now I was totally against, and it angered me when MS created the MS Explorer browser which they also gave away for free thereby sinking the Netscape browser which was not free. However I believe the situation was different. The Internet was getting hot and Netscape realizing this, offered a reasonably priced...IMHO, way for everyone to access it. Keyword "everyone" not a small segment like software developers. Up until that point what major piece of software did MS give away for free? And I submit, in the early days of the Internet a browser was a major piece of software. Before the Internet mostly only businesses and hobbyist had/used computers. Even today if you take away the average persons browser and email program, few people IMHO would have use for a computer.
08/31
I think I'm going to like Julia it's VERY much like Python.
08/30
Discovered and installed the programming language Julia. It's been around for a few years but just attained version 1.0 status less than a month ago. Also wrote my 1st simple program to get a feel for the language.
03/04
Python greenbar program coming along...PDF [1st page blank]. This is probably as much work as I'm going to put into this. It started out just to see if I could.
03/02
Start work on Python program to create old IBM green or blue bar computer printout listings...for that vintage look. Was inspired from a MS-Windows only program [HercPrt] that uses  sockets to print computer listings to PDF.  Mine is different and not as sophisticated. It formats regular text files to PDF after output. I did this because I use Linux NOT Windows.
02/28
Continuing retro. MVS. An OS more advanced than the one...OS/360 I used at school. I had no interactive editor, I had to punch cards and submit to a card reader! Then wait an hour or more for the computer operator to print out my listing...after it's turn in the job queue. Then if any errors...repunch new cards, resubmit then wait another hour. Rinse and repeat!

This OS was too expensive, back in the day, for the budget at our small company. A OS that gave thousands of computer operators, system programmers, programmers,DBAs not to mention IBM support, training facilities, the list goes on...a great career for many years. The OS that powered IBMs biggest and most powerful computers...in it's day. An OS whose manuals from IBM alone, filled bookcases...not to mention all the non IBM books written over the years, many still available on Amazon.

Thanks to the great work of the MVS Turnkey system created by Volker Bandke  and the YouTube videos from Moshix [great explanations and very clear] that introduced me to that package...I got MVS running on my Linux computer. I suppose because it's MVS, that it has the most attention given to it in the emulation world and is really complete (including VTAM, TSO & compilers). In the screenshots below [which can be expanded] you can see...on my Linux desktop, the hercules IBM 370 emulator running on the left and the 3270 screen [also an emulator] running TSO on the right.

TSO

TSO User Menu

TSO supplied dataset list..page 2


Here is a program in a TSO editor, running in MVS.
02/26
Continuing retro. Here's a DOS/VS operator console which looks very much like the VSE systems I worked on for years. I had some trouble finding the DOS/VS 5 pack. But thanks to "computeroperator" on YouTube...he was able to help me find it! My desktop is obscured by the editor. but you can see it's taskbar at the bottom. This is really amazing. It' just an operators console...but you can view the partitions. I'm running on my personal computer, OS's that ran business's. An OS's along with the hardware that any normal person couldn't afford, back in the day. On thing to note...it is bare bones...just the console. No VTAM or interactive envirernment, unlike the MVS turnkey available. However you also can submit JCL from Linux.

02/17
Continuing retro. Now using the hercules emulator for IBM Mainframes and also the 3270 terminal emulator. Here's VM/370,  IBM's first version, released in 1972...way before Linux knew what a VM was or, for that matter, the world knew what Linux was. This is very much like the VM systems I was employed to maintain...


02/11 Feeling nostalgic! Taking a stroll down memory lane. Resurrect working with old computers using emulators [see 3/13/2013 and 4/9/2013] project that I did 5 years ago. First up...the DEC PDP11 running RSTS. However I noticed...thank God for screen captures, that if you look back in 2013 when I did this, that after I logged on it said "WELCOME TO RSTS/E V7.0 TIME SHARING". It doesn't say that now! I worked on a  PDP 11/40 [or 11/45] and a PDP 11/70 running RSTS/E. Install the simh package [a mini computer emulator], which includes emulation for the PDP11 along with 30+ other old computers. And here it is running in a Linux terminal on my desktop!


Actually...even better, here's a PDF with actual screen output along with comments!







2017


11/13
I've been working with computers for over 30 years and I still am amazed at how fast they are. I do these little exercises every now and then to remind myself. I ran a Python program I wrote to create real "looking" customer data. It uses sqlite databases of first name, last name and zip codes to generate these records. It took about an hour and 15 minutes to create "one million" [places pinky in the corner of my mouth] records. This file is slightly greater than 87MB. It is a "|" delimited file. It also contains real "looking" addresses with correct city/state for the zip, and a valid 16 digit mod 10 account number. the average record size is > 90 bytes...if I pad it out to a fixed length record it's about 140 bytes. Python is a great but interpreted language hence not the quickest. To be fair it is accessing 3 SQL databases and doing a lot of random number generating to create many of the other fields a million times.

I imported these one million records into a SQLite database and it took roughly 12 seconds [twelve seconds], and this SQL database file created is about 131MB. During those 12 seconds it also created the Primary Key using the 16 digit Account number. I guess generating random 16 digits are enough to insure you don't get duplicates because I didn't get any. To double check I tried importing the records in again but immediately got "INSERT failed: UNIQUE constraint failed: customers.Account". I can run SQL querys within the "Sqliteman" GUI program and it gives me timings of the query's. For example, I selected all last names of Smith and sorted by Last, First and it took 0.265 seconds to return a portion of the 16,886 records. And these fields were not even indexed...Amazing! This is from a standalone SQLite program. SQLite is a great little database but doesn't have all the bells and whistles of a "real" SQL database such as MySQL or PostgreSQL. I really love this little database and have converted many of my old MS-Access databases to Python/SQLite.
11/12
Continuing my look at COBOL. Previously I had typed/compiled/ran the customary "hello world" program to test the compiler. But wanted to learn to read/write typical PC files with variable length records with each line terminated with a CR. The mainframe programs I've written in the past always used blocked/fixed length records. Success!

I'm rusty but if I can learn MS-Access, Python, PHP, various SQLs on my own...with no formal training. Then I can surely pick up a language I was trained in and which I was paid a salary to program in. So there!
11/10 Installed GnuCOBOL 2.2 (formerly OpenCOBOL) the long way with ./configure, make etc. Had to add a few libraries. The last time I played with this it was OpenCOBOL 1.1. My timing seems to be good because this latest version was just recently released on Sep 7,2017.

Why COBOL now? I'm a old IBM COBOL/mainframe guy and I was watching some old "The Computer Chronicles" from early 1980s and they were sponsored by Micro Focus and they showed COBOL scrolling on a screen. That sparked a renewed interest.  Also there's just something cool about running something on my PC that use to cost a fortune to run on a IBM mainframe. Finally you know what they say..."A computer without COBOL and Fortran is like a piece of chocolate cake without ketchup or mustard".

Joke from "GnuCOBOLFAQ.pdf"
11/8 Looked at another virtualization technique because Virtualbox seems to be falling by the wayside. Went through process to install libvertd virtualization [key terms are KVM,QEMU]. Wow why can't everything be explained in 1 place? It's as if everyone trying to explain the process deliberately leaves stuff out in order to make their selfs look smarter. For example near the end where I almost got a VM up I get an error such as "error connecting to virtual console. error opening spice console" then when you google that you get something like "I can't connect to spice" NOT "What the Hell is spice" I've been using Linux over 20 years and I never heard of spice. If the error said "error connecting to virtual console. error opening [VNC or RDP] console" I would have had an idea of what that was. Long story short I changed the default when creating the VM from spice to VNC...and it worked! Why is spice a default. I've worked with remote graphical desktop sharing systems before and NEVER heard of spice but see VNC or RDP all the time.

Finally, got a Solus ISO installed in a VM.
10/17 In the past I tried and really liked Lazarus. I had to learn Lazarus AND Pascal...and I enjoyed the process. Lazarus made me want to learn Pascal. I have been using Linux exclusively for years, Lazarus seemed to be a superior replacement from Visual Basic which I use to use on MS-Windows. Recently I was looking at an old Lazarus projects that compiled and ran on both Windows and Linux [my Judo scoreboard program was written 12 years ago in 2005] and remembered how much I enjoyed this.

So for me Python will remain my main scripting language and I need to put more effort into Lazarus/Pascal for GUI development. Free Pascal seems very fast. I need to put more effort into getting Lazarus to work with SQLite for it to be truely useful for me. This is the missing piece of the puzzle for me because SQL is so powerful
10/13 Rewrote judoplaces from MS-Access to SQLite/Python. Wow my brain really atrophied from lack of programming. It took me forever to find a simple error that Python was complaining about. Turned out it was a "if" statement case problem mispelled as "If". Python was pointing to the variable name...not the "If". However the code editor had pointed this out by not color coding the statement...but I didn't notice. Next it I was convinced that the SQLite module was skipping records. Once again it was my problem of having an extra fetch statement within the loop. I should code more often. I'm sure in my case it's a more satisfying brain exercise than anything else.



2016


9/30 Another small step in learning Gambas. Specifically the Database controls, most few database examples I've seen deal with SQLite. The trick for me to make it work with PostgreSQL was to add DataSource1.Table = "customer" in the Form_Open routine.
9/28
Wrote simple Gambas program to access PostgreSQL database. Had to write Gambas code to connect to the PostgreSQL database in the form_open section. I had to write connection code in Python also...so why do I mention it here? Because there are some GUI Visual Basic controls that if my memory serves can be connected to the database in the control itself. Also there is a connection setup in the project that I thought possibly was applied to the data controls.
9/27 Wrote simple Python program to access PostgreSQL database.
9/26 Disappointed on how seemingly difficult PostgreSQL security is. Read several places that you do something like:
create database mydb;
then...
create user bill with password 'password';
grant all on database mydb to bill;
but after logging on by
psql -d mydb -U bill
then attempting to do a simple select on a table I created...I get this:

Many questions/solutions  from Google about the following error
mydb=> select * from customer limit 10;
ERROR:  permission denied for relation customer

WTH? It seems straight forward
Googling leads to further confusion
Many different solutions, including:
GRANT ALL ON TABLE customer to bill;

Which BTW...why should that work? If I previously granted myself all privs to the database, wouldn't I now have all privs to tables within that DB? Evidently not, seems kind of like root creating a file in my home directory...I can't access because root owns it. So... grant all on database, dosen't really mean grant all, but grant most or grant all unless you didn't create the table. Me not being able to access every file in my Linux home account isn't as confusing because I understand the concept of permissions and ownership, but the command grant all is misleading.

So...while describing the problem I figured out the solution. The problem...at least MY problem was that I created the table within that database from postgre. Solution was to [after creating database and user within postgre] was to logon to mydb from user bill then create the table.

I believe I followed an example somewhere that showed creating a database and Role from psql under the postgre account then creating a table. I don't think it was made clear that you should create the table from the user NOT postgre. Yes you can create the databases, user's and table's from postgre however evidently postgre will own those tables regardless of the fact that you granted all privs to the database to the user. For the purpose of learning commands, yes you can do everything within postgre. Perhaps "GRANT ALL ON TABLE customer to bill;" would have fixed the problem also. So for learning PostgreSQL all the commands work from postgre, however I think it should have been made cleaner that once the database and user were created that database operations on that table should be done from the user granted access to that database.

9/25 Looking at video editors. My needs are simple. Most important is being able to choose parts of video to save. Have used Avidemux and ffmpeg/avconv. The main problem I have with those solutions are selecting start time is not always exact, sometimes a video begins with many seconds of black. So I've been playing with some other options. Namely Kdenlive [probably the most powerful, with most features]. However for my simple needs Flowblade really worked well. Also Openshot very similar but adds transitions which I like also.
9/20
09/20 - Really want Lazarus working. Also have a big curiosity [probably because I've used MS-Visual Basic] about Gambas [see farther down below]. So I feel some changes in Mint 18 along the way may have caused the problem. So I decided to Clonezilla what I have, then reinstall Mint 18. Lazarus still seemed to have problems. So installed Lazarus from Software Manager. It did install FPC but not sources.
BTW WTH do you choose? Lazarus or Lazarus IDE or Lazarus 1.6. They all say 27MB download which is way less than 3 deb files.
Having a Lazarus IDE implies that you already have FPC already installed, but why is the install size the same as a complete Lazarus install?

Warning
Without the proper FPC sources code browsing and completion will be very limited

Directory: /home/bill/Mystuff/Pascal/Lazarus/

I don't want a crippled install. So I installed the sources from Software Manager. Which fixed that problem, however when trying to edit an existing Lazarus project...I got

Warning: directory lcl not found

Very skeptical about Software Manager's Lazarus install
So tried to uninstall using the Software Manager which said it did it, however...the fpc compiler wasn't uninstalled. So it really didn't uninstall everything it installed!

What was/wasn't installed/uninstalled?

The 3 .deb file downloads[fpc, fpc sources, lazarus] are 126.3MB which was much larger than Software Manager's Lazarus reported install size.

So glad I cloned fresh Mint install, will restore and try installing from the .deb's.


While installing FPC 3.0 & Lazarus 1.6 deb...

A later version is available in a software channel

You are strongly advised to install the version from the software channel, since it is usually better supported.

So...restored latest Mint clone...Installed from 3 deb files [in this order FPC, FPC sources, Lazarus

And, finally, drum roll please....It WORKED!!!

 config error messages when starting IDE. My existing Lazarus Scoreboard program opened fine.


bill@bill-desktop ~ $ fpc
Free Pascal Compiler version 3.0.0 [2015/12/05] for x86_64
Lazarus 1.6 2-15-2016

Of course AFTER I let the Update Manager, update FPC & Lazarus which it wanted to do...drum roll please....It DIDN'T WORK!

So I've decided to restore clone and most of my other software before installing Lazarus. Since I feel I now know how to get and keep it running...install from .debs & don't update with Update Manager.
Installing most of my other software 1st cuts down on time when I have problems with bigger, more complicated software, because some of the other software still aren't just a simple install.
For example the Keepass Firefox plugin requires a complete mono install and a plugin placed in '/usr/lib/keepass2' and sometimes a Firefox  option change telling where Keepass2 is.
Truecrypt, Veracrypt, Opera and Google Chrome not are not installed by Software Manager.

G A M B A S
Because of my familiarity with Visual Basic, I have a fascination with GAMBAS, however I really haven't used it much. It does seem like very nice project and it's been around a long time.
I install it with Software Manager then tried to remove  with the Software Manager, because I could install the latest version via a PPA but it got some status code near the end...maybe because I hadn't closed the Software Manager. It showed in the menu but wouldn't start. So I installed it by a PPA.

Restored clone again [maybe not the best/fastest way, but since I'll be on this release a long time...I want my system very clean.


09/16
On a whim, I tried to install Linux Mint 18 KDE from a DVD instead of USB. Despite a few problems...it worked. Didn't mess up my grub menu, rendering my computer un-bootable!
Want to try out Plasma...KDE 5.  I had stability problems in the past, but so far so good.
Perhaps this would have worked for Antegros also!

Installed Linux Mint 18 Cinnamon also. ffmpeg is back!
9/15 Tried to install Linux Mint 18 KDE but if screwed up my grub start menu like Antegros did before.
9/13
Changed 'System Info' in the About page to use phpsysinfo instead of linfo because it stopped working.
9/6
Work with PostgreSQL [locally]...
Ran my Python program to create 1.5 million random test records. Took 1hr 21min.
Import using PostgreSQL 'COPY' into database took 23 sec.
4/30 Tried to install Antegros [antergos-2016.04.22-x86_64] but if screwed up my grub start menu.
 

2015 

   
   
8/13
Change Gmail from IMAP to POP3 to save email with Thunderbird. Since I enabled 2-factor yesterday I needed an app password from Google to use on Android phone. Install LAMP and Ubuntu server under VM. In order to test changing my PHP programs that work in version 5.3 but not 5.5. Qualityhost had to bump me back from 5.5 to 5.3 to keep my PHP scrips working. First problem found [and maybe sole problem] is since PHP 5.4.0 the function import_request_variables[1] is no longer supported. Perhaps extract($_REQUEST); is the solution. Install and setup "offlineimap" to backup IMAP emails, because they appear to be downloaded in Thunderbird but actually they are stored/viewed on the server. Needed to use "Mutt" to view the mail Dir format. Hard to use, but has many option. Used new printer and output was terriable. Tried align print heads...didn't help. Finaly clean print heads, level 3 [last one]...worked! 
8/12
Changed Google password and enable 2-factor authentication. 
8/10
Replaced Manjaro KDE again [updates once again hosed it up] with Linux Mint KDE 17.2. 
6/27
Don't want to say this too loud because something will probably screw up...but I'm really liking Manjaro KDE. It's a great backup distro because it's not Linux Mint and does'nt use Cinnamon which is a Linux Mint project. Again it's not from Linux Mint which depends on Ubuntu which depends on Debian. Right now my biggest fear is a update that trashes it. Because is's not Ubunto/Debian based software installation is different. So far I have used 3 methods to install software:
1) Octopi to install most software, is much like Linux Mints Software Manager. Search for software click & install.
However discovered that "Blender" was not offered in Octopi.
2) pacman to install "packages"
Search the web and found a Arch "package" for Blender...downloaded it.
It is installed like...
sudo pacman -U blender-16_2.74-3-x86_64.pkg.tar.xz
Worked perfectly!
Also install XSane which is a much better scanning program than the Octopi offered SimpleScan
You can search for other packages here: https://www.archlinux.org/packages/
3) a combo of using "makepkg" and "pacman" against files in the AUR.
Wanted to install radiotray. Not in Octopi and no packages.
However it was offered in the AUR (Arch User Repository) as a ".tar.gz"
Now you download that then extract it.
Next you go to its directory and type "makepkg -s" which does a lot of stuff and creates a package.
Finally you execute "sudo pacman -U package" which completes the process.

In general a little more work than installing in Linux Mint...however I never had to personally resolve dependancies which is a huge plus!!! I can live with this.
6/25
Really hope this Manjaro KDE distro works for me, I had used it before and liked it until an update rendered it useless. It fulfills my requirements for a backup distro. Non-Ubuntu/Debian based [Arch based] KDE [with tweeks acts like cinnamon]. 
6/24
Had installed manjaro-kde-0.8.13-x86_64 a few days ago but overwrote it because of some problems that I don't remember. Reinstalled today and applied all updates with Octopi. So far seems to be OK. Download size is 1.9GB The lastest KDE 5 Plasma and Krita included. Antergos was using KDE 4. 
6/23
Installed Antergos w/Gnome default. Desktop hung twice. So decided to try Antergos w/KDE which failed during install and screwed up my GRUB. Had to fix with Boot Repair. Another big problem I had with this distro was it was already 1.6GB and it still didn't include LibreOffice or Firefox (although you could select and install during install). VLC and Gimp also NOT installed and no option during install. You select your desktop during install so even though you already downloaded 1.6GB the install takes a long time because of all the other stuff downloaded during install. Seems needless especially if you wanted to install it on other PCs also.
6/16
LastPass hacked. Glad I enabled 2-factor a few weeks ago. Changed master password anyway.
6/10
Decided to take another crack at KDE so I installed Linux Mint KDE 17.1 LTS. Not really a backup distro because it's still Linux Mint. Already decided I wasn't going to use that stupid KDE wallett but it didn't ask me if I wanted to use it anyway. Dug a little deeper into settings and found I could configure it to behave just like cinnamons virtual desktops. Also could have the spinning cube. Also found the setting to only show the tasks in the current virtual desktop instead of the default of showing all tasks in each desktop. 
6/1
Enabled 2-factor authentication in LastPass using Google Authenticator. 
3/18
Update Linux Mint 17.1 kernel from 3.13.0-24 (3.13.9) to 3.16.0-31. After install loaded it with Grub customizer. 
3/2
Notified QH about their PHP upgrade from 5.3 to 5.5 which broke some of my scripts. They moved me back to 5.3. 
1/25
So far it seems that openSuse & Manjaro are currently my backup distro. I like openSuse because of their long history. But I really like Manjaro KDE, when it works correctly. However currently using Manjaro XFCE which is their default, it's clean & nice, but not as flashy as KDE. 
1/24
Install Manjaro XFCE v0.8.11. The supplied xfBurn, backs up full DVD ~5-6 min. 
1/23
Install Manjaro KDE v.0.8.11, but after applying all updates, once again got black screen at reboot.
1/21 Wanted to play with KDEnlive so start up OpenSuse and it annoyingly repeatedly asked for KDE wallet password. Are there any reliable Linux distro? Maybe I'll try Manjaro again I liked it till it stopped working.
 

2014 

   
12/1 When I started OpenELEC noticed Time was again wrong. I guess the below mentioned change didn't work. So I tried the change mentioned in the above config file but that didn't work either. Finally found myself that you can just add "pool.ntp.org" in "Programs/OpenELEC configuration/OpenELEC settings/Network/". Also in "System/Settings/Appearence/International" make sure timezone info is correct. All this is point & click. So one big "OpenELEC" gotcha to me is the fact tha all settings arn't in ""System/Settings" but also in ""Programs/OpenELEC configuration/OpenELEC settings".
Tried to open a encf stash created on main computer but it would hang. So created encf stash on Pi and it worked fine, Main computer could also open encf stash created on Pi.

Since omxplayer is only command line, wanted way to run it by clicking on the filename in PCManFM. Found a good potential solution titled "How to play a video on a Raspberry Pi Desktop by double-clicking on a file." http://www.bashedupbits.com/2013/11/how-to-play-video-on-raspberry-pi-by.html but it had problems right away with spaces in the filename. Don't know bash scripting very well and unable to solve problem with my limited bash skills, so I turned to Python and without too much trouble, got it working. However had problems invoking it from the file manager, PCManFM. So I found this page called "Customize Your LXDE Right Click Menu" at http://pclosmag.com/html/Issues/201102/page10.html that helped me solve this problem. So credit to both links. The problem was the way the Python program was being involked from PCManFM. Well this page explained how a ".desktop" file is created in ".local/share/applications" you can edit this file [for each file type]  and add the correct parameters on the "exec=" statement. Also thanks to the first link, found that you couldn't invoke the program directly because "omxplayer" commands won't work...once you start playing the video you have to wait till it finishes, thank goodness I 1st played a short music video. The trick is to invoke your program through xterminal..."xterminal -e pythonprogram.py", then the players commands work!
11/30 Install XBMC remote on my Kindle Fire and can control XBMC on the Raspberry Pi. Having fun playing with it. Can access Apple iTunes Podcasts and Movie trailers. Noticed Time was off in OpenELEC so Googled for a fix. Found a page that showed you how to fix it by SSHing into Rpi and changing a config file, then it would be fixed by a reboot. Or for novice users [as they put it...assholes] you can fix the timezone through a menu and it would take effect right away. Well I guess I'm a novice user. Why would I want to SSH from another computer, change a config file and reboot, when I could just click a few buttons? The hardest part was I expected to see a time/clock setting button. But the clock setting was buried in Settings -> Appearance -> International.
11/25 Got old Admiral AM tube radio that sat on a shelf above the sink when I was growing up in the 1960s. Had a thought of putting a Raspberry Pi inside of it, and only play 1960s era music and radio spots. Been writing a Python program that plays random 1960s music. After every 3 songs it plays a radio jingle followed by a 1960s commercial. I use streamripper to rip 1960s music from 1960s music streams. Streamripper works better with stream with a clear beginning and end. I've been using a UK 60s stream that has good seperation. Used YouTube to get jingles and commercials. Also used YouTube for songs I wanted that weren't ripped, although just letting streamripper run for a while can result in a lot of music. I used 'avconv' to convert the YouTube videos to MP3s and also to extract individual segments from a video with many commercials and/or jingles. So my Python uses 3 folders, music,jingles and commercials.
11/22  Raspberry Pi (computer the size of a deck of cards) came today (or 11/29 due to my poor records). Runs Raspian Linux, (Debian for Raspberry Pi) Had some minor problems connecting to Wi-Fi. Problem with no audio coming from TV attached by HDMI cable, Fix: I had to uncomment a line [hdmi_drive=2] in /boot/config.txt. Media wouldn't eject from File manager. Fix: sudo apt-get install eject.
11/18
Ordered Raspberry Pi. Have a couple ideas. 
1) MP3 player  inside 50+ year old yellow Admiral Radio that parents had above sink when I grew up in the 1960s. Only play 60s era music.
2) Media player attached to main TV by HDMI cable. Would be able to play many more formats than TVs limited formats.
 11/2 It seems to me that many software installs that didn't go smoothly in OpenSuse, got better as I re-evaluated it later. Perhaps it was because I got more use to OpenSuse's quirks. Even after being out for a couple months, VM Virtualbox seems to be a pain to install on OpenSuse, or at least more work than I want to devote to it. OpenSuse's online software said it had it, but it appeared to only be a 11 meg front end to Virtualbox. I saw one article explaining how to install it. However for me there was a pre-req. These days I try to avoid anything that causes me to track down pre-reqs. I've been through tracking down pre-reqs and tracking down pre-reqs for those pre-reqs, it's not fun or challenging to me anymore. Virtualization has become an important feature to me. So once again was re-evaluating OpenSuse as a backup distro. However, I was listening to Linux Action Show review of OpenSuse 13.2 and they mentioned that OpenSuse had Xen and KVM Virtualization solutions in Yast. Silly me forgetting that many times there is more than one way to do something in Linux. So I tried Xen first because it was on the list first. Didn't like that it seemed to require a different boot from Grub (maybe because of a different Kernel). So I tried KVM next which didn't require a different boot or modify Grub. Installed Xubuntu 14.01 on both and both had the same messed up characters/icons on the menu bar. I couldn't click on the network or volume icons and could hardly read the clock. 
10/24  Well...with all this using OpenSuse then replacing it then going back to it, it is becoming easier to use, due to sheer repetition.
Helpful thing's I've learned using OpenSuse:
  • Use Networkmanager [Yast2>Network Settings>Global Options>User controled with Network Manager] first thing, much easier to connect to networks.
  • Use Apper [GUI] NOT Yast to install programs. In addition I have found that the online, 1-click install, via a web browser usually works.
  • zypper is the [command line] tool can you use to install programs. It's kind of like Debians apt program.
  • Many programs that require authentication, will appear to be stalled, when really, the authentication popup is behind the main window!
A new user who may just happen to use Apper first off to install software and had no problems may wonder what all my complaining is about. However, as a old former Suse (NOT OpenSuse) user I naturally assumed you used Yast for most things, so that's where I started.

I mentioned before how I found Yast wanting to install a redicilious ammount of dependancies. Many making no sense to me.
For example, installing Krita...
  • Yast required over 280 (47x6=280...47 per page, over 6 pages) additional dependancies. The 1st page alone reported that Marble, bash-doc, digikam-doc among other dependancies would be installed. WTH? In addition it asked me to accept 2 (gstreamer, flash) licenses.
  • Apper only reported that it required 21 additional dependancies to be installed. And it installed the program fine. Everything seems to be working.
I'm learning OpenSuse by trial and error and like it more and more. If it wasn't for the fact that my other fallback distros [SolydX, Manjaro] kept falling short in some manner I probably wouldn't be using OpenSuse. Now you may say in addition to OpenSuse you only tried SolydX and Manjaro but  I excluded all Ubuntu based distros [because if Ubuntu dies they all die] and that knocks down the list a lot.  Because these days I just want something that is intutive and just works.

With all that being said I really can't think of another better distro to use as a fallback or primary distro than OpenSuse. OpenSuse based on Suse is one of the oldest distros around and like Fedora which is based on Redhat. A distro based on Ubuntu is better for new or experienced user who wants something to work as easy as possible and/or is tired of solving problems.
10/21  Replace Manjaro with OpenSuse 13.1 AGAIN! Tried first 11/19/2013. Updates caused taskbar to dissappear. Created a new user and taskbar was there. So deleted .kde in my account Logoff then backon and taskbar reappeared. 
10/19  Applied big update to Manjaro and now it doesn't come up. So much for using it as a backup distro. Too bad I was really beginning to like Manjaro.
8/31 Replace fallback distro, Manjaro XFCE with Manjaro KDE. Install Firefox, Thunderbird and a few games.
8/30 Replace fallback distro, OpenSuse with Manjaro [Arch based] XFCE. First logon will fail unless you specify a default XFCE session. Unable to erase files or change permissions on a USB flash drive. I shows me as the owner anyway. Google seems to suggest "ghost files" from a windows virus. There were various solutions, however my own solution to use the gnome-disk-utility 3.10.0 to format then create a filesystem [i think] seemed to be the easiest. Perhaps I got a virus while accessing my Windows hard drive which mysteriously failed to boot a few days ago.
8/24

Installed Linux Mint 17 Mate on an acquaintance Toshiba NB 205 netbook because Windows XP is no longer supported.. Installed ~400MB of updates. Installed Google Chrome which they were using under XP.

8/22 Replace my fallback distro SolydXK with OpenSuse 13.1 AGAIN! Because SolydXK has changed their vision. Doing away with their home edition. Many things I had trouble with in OpenSuse, work better now.
8/11 Installed 'tomb' encryption software. Required 'zsh' and 'pinentry-curses' in Linux Mint 17. Because of the 'Truecrypt' circus, I have been looking at other on-the-fly Linux encryption alternatives. Tried and used 'Gnome Encfs Manager' for encfs stashes, a month or 2 ago. It's advantage is it is grows as needed but the file's and filenames are obviously encrypted. Tomb is more like Truecrypt in the sense that you create a single file of a predetermined size.
7/25
Looked for, found and installed old Kindle Fire HDX file xfer program, GMTP. Pluged in Kindle Fire HDX and Linux Mint 17 recognized it and mounted it as a android device! GMTP [required in Mint 13] not needed.
6/29
Found installed OPENCOBOL. Wrote some simple programs.
6/3
Linux Mint 17 backups take around 20 minutes as opposed to 5-6 min in Linux Mint 13 with GnomeBaker. So I thought I'd simply compile it like I did in Mint 13. However the 1st step, ./configure gave me "configure: error: C compiler cannot create executables". A compiler can't create executables? WTH? Short term solution is to use K3B in SolydX.

Installed Gnome Encfs Manager. Also does on the fly encryption. Looking into alternatives to Truecrypt because of brew-ha-ha [developers bailing out]!
6/1
Installed Linux Mint 17 LTS Cinnamon 64 bit, replacing Mint 13 LTS 32 bit.
4/19
Applied 4/15 update pack to my SolydK and Terry's SolydX. It took maybe 4 hours or more. Because it's one of the big quarterly updates which updated the Kernel also.
4/16
My sister Terry sent down her laptop PC because it was running Windows XP which is no longer supported...support ended 4/6. I wanted to install Linux Mint but the current LTS is just ending and the new isn't out yet. Wiped off XP after backing up data.  Laptop is an older Dell Diminsion. So I installed SolydX which seems to run very peppy on it. It's a rolling release so  theoretically it can stay updated forever...however the very first thing I had to do was update sources.list so it could update! Updates a little confusing, because the one in the menu updated much more than the one on the main screen. Time was wrong and very hard to fix on the command line. Got wireless working. Got her wireless router setup and working. Put buttons under address bar in Firefox for Facebook, Yahoo [for her email] and Youtube. Installed Google chrome also and installed the "LastPass" browser plug-in so she can easily manage her passwords. Trying to make Linux as easy as I can for a not very tech savy person.
3/30
Found out when I got the Networking "waiting for authorization" problem in Solydk that I can simply log off then back on to fix the problem rather than reboot. Then reenter the Kwallet password. Much quicker. SolydK seems pretty nice!
3/20
Replace my fall back Linux Distro [see 11/19/2013] from Suse to solydK 64 bit.
SolydK uses Debian as their base. Solydk is their KDE version. It's a rolling release.
It comes with a Steam installer.
Comes with all codecs installed.
Major updates:
Gimp from v2.6 to v2.8 [single window mode]
LibreOffice from v3.5 to v4.0
Suse is just not sitting right with me. What's with the continuous gstreamer updates?  Like everytime!
And Some updates fail with dependency issues. And Virtualbox was hard to install.
I installed the latest version of Virtualbox on SolydK with the 64 bit version of Debian wheezy and it works great.
I may try Suse again someday because its run by a large community.

The one problem I'm having with SolydK is Networking/KDEwallet. One time Networking comes up...the next it's "waiting for authorization". Rebooting seemed like the only option [see above]. I guess I could disable the KDEwallet, but I read somewhere the Network password is stored as plaintext.

openSUSE 13.1: Frustrations. Trying to install Oracle VM Virtualbox. Found RPM and install seemed to go OK. However trying to start existing VMs report that Kernal modules may need to be recompiled. Command gived errors out reporting "Make" not installed. Once again trying to install "make" using YAST shows a rediculous amount of dependencies needing to be installed. Such as libre-office-icon-themes libre-office help, samba-client [32 bit no less], flash-player, java and once again 77MB of KDE wallpapers. Really? Really? The web one-click install worked and seemed much more resonable. Installing software using YAST seems absurd. After all this it still fails. Googling each problem seems to point to another fix.

Once again if I had to install this in openSUSE, I'm sure I could. Went through similar steps to install many software packages...ten years ago! In Linux Mint I believe the only thing I had to do after installing was to add a user to a group.

I don't want to work this hard in 2013 when I know I don't have to! So once again I need to re-evaluate openSUSE as a fallback distro. Why is this getting such great reviews?
11/25/2013
openSUSE 13.1: Recap! Codecs required a little work to get working. Still, probably at least 50 times easier than older distros from a few years back. But still, harder than it should be in 2013. This stuff just worked in Linux Mint. This is a long term supported release...at least 3 years. After installing...some applications required me to manually add them into menu.

So I intend [at least initially] to primarily run a Linux Mint LTS. A new one should be available in a few months. The 32 bit version now requires PAE mode which will access more memory.  But I will continue to update and play with openSUSE 13.1 as a fallback option for Linux. This will allow me to be more comfortable with it should the need arise to switch. As far as a skill, knowing openSUSE is probably more valuable than knowing Linux Mint.
11/23/2013
openSUSE 13.1: Finally got VLC and mPlayer working, using 4 terminal commands:

I think the link was:
http://forums.opensuse.org/blogs/caf4926/opensuse-13-1-multi-media-restricted-format-installation-guide-149/

This also resulted in many packages [157]...but they all seemed to make sense [lib...] and most were small downloads. No 80MB of wallpaper.

If history is any indication...VLC or codecs will be just as hard to install the next release, beause you will have to try many crappy recomendations before you find the one that works!
11/22/2013
openSUSE 13.1: Tried to install VLC again with "one click" install. Webpage had changed some. Noticed it defaulted to "Yast 1-click install" instead of the previous "apper". This time it installed OK...but still having codec problems trying to play YouTube videos. Found a "one click" install for codecs. But once again it wanted to install an insane amount of dependencies, from things IMHO having nothing to do with codecs. Judging from my Google research this is an ongoing problem with openSUSE. Solution seems to be to use the VLC site itself instead of the openSUSE site. VLC has a "one click" install, but they still don't for this version. So will wait again! This is very frustrating especially when you read all the glowing reviews. VLC is a very popular program. Installed Stellarium fine. Celestia install seems to go good but it dosen't. The only thing the local search finds [after the so called install] is kde3-celestia.ymp...which just seems to reinstall it again with the same results. I guess I shouldn't be an early adopter for openSUSE. I should wait a week or two for other people to smooth out problems. I can only assume it's a openSUSE problem. After all it's one-click and dosen't require a great amount of thinking. Also some of the other programs install fine. Unless it's a 64 bit problem?

I try install on real my hardware and a VM [which I assume duplicates the same virtual hardware for everyone]. I used Clonezilla for real hardware and VM Clone for the VM, so I can backout incomplete or weird installs. It's extra work but I feel necessary while I wrap my head around openSUSE's way of doing things.
11/21/2013
openSUSE 13.1: Installed Thunderbird and Krita with no problems!
11/20/2013
Restore openSUSE 13.1 from a stable Clonezilla image. Tried to "one click" install of  VLC again from openSUSE. The VLC site also has "one click" installs...but not for this version yet. This time failed "Dependency resolution failed". Also tried to install with YAST2 but it wanted to download everything including the kitchen sink....77 MB of kdeartwork4-wallpapers? Bash and Digikam docs? Really? WTH! Will try again in a few days.
11/19/2013
Download/Install openSUSE 13.1 64 bit. Linux Mint is basically headed by one person, and I felt it might be good to have another distro to fall back on. Suse is one of the oldest distros. Wanted to install Flash and VLC to start. Flash installed fine. VLC installed but wouldn't play any of my existing YouTube videos.

Networking gave me a little problem. Wouldn't work until I switched YAST>Network Settings>Global Options>User Controlled with Network Manager.
11/17/2013
Running out of space on Linux Mint 13 [my primary distro] because of large ISO downloads and VMs. Used Gparted to increase space from 200GB to 310GB. Resized the home partition of another distro before this primary distro and slid forward then moved the 5GB swap forward which gave me another 100 GB. Used Clonezilla to backup primary distro /home before resizing. Currently dual booting 3 Linux's and Windows. Plan to install openSUSE [ long term supported] when it is released in a few days. And later Linux Mint LTS. So just keep/update 2 Linux's. The others can be tested in a VM,
11/16/2013
Download install lightweight Linux distribution...Lubuntu. It uses the LXDE desktop environment. The 1st thing I noticed is in the browser, my mouse wheel doesn't work to scroll. I use that all the time. If my PC was old I might use it. I read this comment from a user " I use LXDE because it does just about enough and gets out of my way." Really? I hadn't noticed Cinnimon or KDE getting in my way. I'll try XFCE next. I guess he's more advanced than me. 
10/30/2013
Just made the greatest discovery...for a debian base distro. APTonCD will create a ISO of all your installed .deb packages. This ISO can then be burned to CD or DVD. Many new packages may be installed after the initial instalation. This could amount to many MGs or GBs. It always bothered me that if you needed to reinstall you would have to manually download/reinstall all those programs again. Or if you wanted to recreate your setup for a friend or family member you would have to duplicate the effort again. What if you had a office with 20 PCs you wanted to set up exactly the same? This tool makes it easy. I tried Googling a solution like this before but with no luck, so I'm thrilled to find this program.
10/22/2013
Downloaded some YouTube videos on WireShark and played with that some.
8/10/2013
Been playing with KDE [Linux Mint 15] lately. Some cool eye candy and features.
7/26/2013
Worked on judoplaces.com. Check links. Some additions. Mostly deletions. Added link to Facebook & Twitter if exists. Added Address2 to remove extra info on address1 so maps would work correctly. Added many new logos.
April 9, 2013
Ran VM/370 in a IBM S/370, ESA/390, and z/390 hardware emulator on Lunix.
Mar. 30, 2013
Ran Windows 2000 in a VM. Have had problems for a while with shared folders, appears hung or very slow. Found a workaround on the Internet that appears to work [no hanging] for me....Map Network Drive. From "Windows Explorer" select Tools/Map Network Drive to associate Shared folder with a drive letter. You then can access the shared folder by a drive letter. If you click "Make Permanent" when creating the Shared Folder...Windows will come up with the drive mapped. This is a great solution as I had resorted to copying files from Linux/Windows to a USB flash drive to get around the problem.

Mar.13, 2013
Ran the RSTS/E OS in a PDP emulator in a Windows 2000 shell running in a Linux VM. This was the first OS I worked with professionally.

Mar. 12, 2013
Replaced Kubuntu with LinuxMint 14.1 Cinnamon 64bit (see Mar. 4th). Because of Kubuntu's update procedure which frequently seemed to hang around 57% (If I remember). However it did not really hang but seemed to be reading the disk drives (disk activity light on) I would come back over 10 minutes later and was still accessing disks. After awhile it would jump another 5%, then seemingly do the same thing. Wanted another KDE distribution so I downloaded/installed Linux Mint 14 KDE. Which did not show the same disk intensive activity.
Mar. 11, 2013
My son Alex bought iMac and he connects to network wirelessly. I wanted to allow him to print to my old (but still prints good) HP DeskJet printer. It is not a network attached printer, but is a local attached to Linux, parallel printer. So I had to tell Cups to share it. iMac saw the printer but would not print to it. Solutions on the internet did not work.  I decided that it was the Firewall...so I turned it off and could print. Didn't want to leave firewall off so I added a rule that would allow the Cups service, and this worked. Next time I'll buy a printer that can connect directly to the network.
Mar. 4, 2013
Download/Install LinuxMint 14.1 Cinnamon 64bit. Other than Ubuntu server running in a VM, had never ran a 64 bit OS so I decided to try one. Things fixed over my LinuxMint 13 Cinnamon 32 bit...1) Software Manager progress meter no longer appears to hang. 2) Can now restart from logout screen 3) Of course it now recognizes all my memory. Software manager reports 20,000 more apps.
Feb. 18, 2013
Bought a native Linux game [The Book of Unwritten Tales $4.99 @ 75% off] from Steam. This is big news. For years one of Linux's weaknesses has been the lack of quality games. It's one of the two reasons I still keep MS-Windows around...the other being MS-Access. Anyway Steam just released a Linux client which I downloaded/installed. Installation required updating my video driver. Was a little worried about updating video driver so I ghosted [G4L] Mint partition to another drive.

I felt I needed to support Steam as they seem very pro Linux and as a promotion many games discounted 75% or more. In addition it seems like they are working with the video chip designers to fix problems they discover. So far my biggest complaint is that they don't specify file size for games in advance. The game I chose was 4GB...much larger than anything I've previously downloaded. I might have chosen another ...smaller game, had I knew the DL size in advance. However they do have pause/resume so you don't have to DL it all at once. Once installed, the game seems very professional and polished...nice graphics/audio/storyline...so far.
Early Jan .2013
Want to install LAMP stack. Had problems previously installing each piece. So I installed my current distro in a VM...then cloned it (incase I needed to get back to beginning quickly). Install LAMP piece by piece, but had problems with phpMyAdmin. So restored clone. and reinstalled using XAMPP, much easier but still a problem  with phpMyAdmin which was fixed with a config change.

Updated VM virtualbox to latest version which seemed to fix my 64 bit Linux install problem. Next install a REAL standalone server (Ubuntu server 64bit) with no GUI on a VM. Makes it easy just select LAMP, SSH and email. After server install...install phpMyAdmin. Again a problem with phpMyAdmin...couldn't log in. Turns out, at least in this case, to logon, it wanted the MySQL password. Silly me sinse, at install, it asked me for a phpMyAdmin password, I assumed it wanted the phpMyAdmin password to sign-in, but nooooooo. Also install Webmin afterwords. Then install PROFTPd within Webmin (Un-used modeles) for FTP access. Sinse it's console based...I can't paste commands into it...however by SSHing into it I can. So I have a real web server I can access from my non-VM linux by using the servers IP address (ifconfig fom the VM gives you the IP address).
Late Dec. 2012
Ordered/installed 1 GB of memory on sisters PC. Replace motherboard battery which was causing BIOS to lose  settings and time. Much faster/better.
Early Dec.
2012
Playing with alot of distros lately. Installed Bodhi 2.1.0 Linux on my sisters old PC with 256MB memory...runs slow. Installed Bodhi, Vector Linux 7.0, Linux Mint 14 on VM. Install Kubuntu on HD...pretty nice uses the KDE desktop, but not enough to make me give up my current everyday distro...Linux Mint 13 LTS. One interesting bit of information about this version of Kubuntu is that it requires a PAE processor. I immediatly noticed it recognized all 4 GB of my memory...the non PAE versions only recognized 3GB of memory. Trying to boot Fedora 17 64 bit on a VM caused my physical PC to reboot... so I installed it on the HD. Seemed pretty decent however after updating the software, Firefox randomly getting "Server Not Found" while clicking on Google links. Same links worked on Linux Mint 13. Saw (in Google) other people had the same problem. Was using Firefox to find solutions to getting MP3's, Video, Flash working. Was fun at one time (when Linux was young)...but now I don't want to work that hard...especially when other distros work so well.
June 2012 Install Linux Mint Cinnamon 13 (based on Gnome 3) on home PC even though I just installed Linux Mint Mate 13 (based on Gnome 2). Linux Mint 13 is a LTS version that is supported for 5 years. Among other things I like Cinnamons Virtual desktop. Mint 13 uses Linux Kernal 3.2. Finally installed Nvidea drivers successfully, didn't even try on Linux Mint 12. Although there appears to be some video driver issues, occasional screen lockups, screen flickers.
06/03/2012 Backup Local church website on my site and restore on their server. Even though the test site on my server was in a subdirectory, the execellent Akeeba backup software, allowed me to restore on their root directory, and get them up fairly quickly. Site has rotating images on the home page, menus with drop down catagories, a Google map that displays their location, an event calendar, audio sermons, a welcome page video, PDF bulletins, bible verse popups, and most importantly, can be maintained by them, through the Joomla WYSIWYG editor.
05/22/2012 Installed Joomla on my website. Learning the CMS software to help a local church get a website that they can update themselves.
05/09/2012 Install Linux Mint 12 on home PC because Ubuntu 10.10 no longer supported. A distribution based on ubuntu. 3D now finally working "out-of-the-box", can run Google earth, Supertuxkart etc. Mint 12 uses Linux Kernal 3.0.
04/20/2012 Update my genealogy software WebTrees from version 1.0.6 to 1.2.7
12/7/2011 Set up shared folders between VirtualBox and Ubuntu. Really useful/productive. I occasionally do some MS-Access programming for a local company. Before I would boot into Windows (Dual boot) to use MS-Access then shutdown and reboot Linux. Use my email to transfer MS-Access program and communicate with client. Repeat above procedure. until project complete. Now I can just start Windows 2000 under Ubuntu Linux and via shared folders do all my work within one system. I know about Wine but I'm not interested in that at this time, and yes I could use email under Windows but I don't want to set it up there. I don't want to access the internet under windows if possible. For me this works great!
12/7/2011 Increase Win 2000 size using the Virtualbox clone feature going from 10GB to 20GB, then using GParted to let Win 2000 "see" the extra space. Installed but could'nt get Oblivion to work. After researching it seems this is a problem with 3D graphics. Perhaps older games may work.
Early Dec. 2011 Install Oracle's VM VirtualBox on my Ubuntu Linux - I'm a little late to this topic on the PC. Why? I don't know. It's even more puzzeling considering I was a IBM Systems Programmer and one of my responsibilities was administering the VM OS on the mainframe, before the this was ever available on the PC. Anyway I'm having fun booting Windows 2000 in Ubuntu. Oddly Win 2000 boots much faster in Virtualbox than natively.
12/24/10 Added link to "About" menu to display system information. Why? Because as a former Systems administrator I am curious about such things. I tried phpSysInfo 1st, but it didn't work for me. Possibably needed PHP configuration changes, which I can't do (not my server). Next tried Linfo which worked as provided, and gave me the info I wanted.
12/23/10 Switched Web genealogy software from phpGedView to WebTrees which was derived from phpGedView. I had just updated phpGedView recently to v4.2.3. but the effort wasn't wasted because that version was required to migrate to WebTrees (using their wizard). Many of the same developer's of phpGedView are now working on WebTrees. It sounds that they cleaned up the code to make it easier to maintain. I also liked the fact, to quote them "Webtrees is database only. This lets us use database transactions, etc. to ensure that any edits/updates won't leave any half-completed changes."
12/15/10 Many changes to dog database (haven't updated in a few years), many new additions.
12/06/10 Updated phpGedView from version 4.1.1 to 4.2.3
10/12/10 Modify Calendar programs to generate nice PDF calendar's that can be printed. Much harder than the simple PDF I created on 10/28/09.
04/22/09 Went to my dog-size.com website and noticed that the Google ads displayed a  green rectangle where the ads should have been. Supplied the missing info to google. And created a privacy policy from a sample on one of their forum pages. This seemed to restore the ads.
10/28/09 Added a PHP program that dynamically generates a PDF report. I generate a birthday report based on the current day. Data is read from the SQL Birthday database. I use the FPDF library.
3/12/09 Change file extentions of older programs from '.php3' to '.php'.
2/25/09 Add some simple AJAX web pages.
3/24/08 Redesign Home page, About page and Other page to use CSS with no table's. Much cleaner.
3/19/08 Fixed Dogs database problem with some foreign names not displaying correctly. Records displayed OK in Windows but did not import correctly in MySQL. Solution was to open the SQL text import file using the Windows PSPad editor and change format from ANSI to UTF-8 and then import this file. Also added new feature where you can click on any dogs name to do a Google search to get more information on that dog.
Mar. 2008 Wrote PHP program that encrypts data stored in a MySQL database using OpenSSL. This is something I have wanted to do for many years.
02/28/08 Rewrote my Python weather program to create Web page by extracting XML data instead of a HTML web page. Hopefully the XML data won't change as much as the web page.
02/22/08 Modify a Python program I wrote a few years ago to put on Web site. It's a fun program that allows you to enter very large numbers and it will tell you how to pronounce it.
Jan. 2008 Create a simple Podcast raw feed.
Aug. 2007 Changed Python lotto programs to use SQLite instead of PostgreSQL.
July 2007 Sign-up with new Web host with price/features I've been looking for. 
June 2007 I signed with a new host who never gave me any account information and site seemed to have problems. Got refund.
Oct. 2006 New host has stopped working (after only about 10 months).
1/3/06 Got new domain name billslittlewebsite.com. (I never did like the old name) and new web hosting company. Move contents of old workingwebdesigns.com to my new website
12/03/05 Let workingwebdesigns.com domain exipire and did not renew with my hosting company. Workingwebdesigns.com has been my website from December 2000 to December 2005. Plan on renaming and moving web site after Christmas.
Jan. 2006 Create Judo database and programs to search Judo terms.
Sep. 2005 Create Judo section with stuff from my kids involvement with the sport.
4/14/04  Rewrote my MS-Access programs that process the lotto data to use Python/PostgreSQL.
1) import.py - read lotto text file (containing all lotto numbers) and insert into PostgreSQL database.
2) summerize.py - read PostgreSQL lotto database and create summary database of all lotto numbers with number of times lotto number chosen.
3) summerize2.py - like above program except creates two summary databases for before/after lottery added numbers 50-53
4) FreqHTML.py - read the above databases and create the frequency HTML report.
5) lotto_batch.py - execute the above four programs in sequence. Takes < 5 seconds.
Mar. 2003 Wrote Python program to extract weather info from weather.gov.
Oct. 2002 Use Flash to create a Magic 8 Ball.
June 2002 Create 'Birthday' database and Web pages.
Jan. 2001 Create simple Polling program that creates a graph.
Sep. 2000 Create PHP distance program along with zip code database. This program inputs two zip codes and tells you the distance between them using the latitude and longitude information in the zip code database.
12/16/00 Wrote directory add/delete programs and moved them to my site.
12/15/00 Moved my web pages I created earlier this week to my site (Calendar, Phone list). Domain name now pointing at my web site.
12/14/00 MySQL database setup.
12/13/00 Signed up for web site. Requested DNS change for my host.
12/11/00 Registered domain name WorkingWebDesigns.com.
12/01/00 Started some preliminary work on a PHP perpetual calendar with random quotes from a MySQL database to put on a web site I want to create.
   

Back to About

02