Categories
Applications Desktop Environments Distributions Web Development

Corona Time is Learning Time 2020

I admit it. I haven’t posted for nearly two years. Since I’m socially-distancing and keeping at home due to Coronavirus COVID-19 concerns. May as well put the time to good use eh?

Since the last written post, so much has happened. I’ve sold all my laptops except one. I’ve set it up as a dual-boot and I’m happy with it. Boots Windows 10 and my distro is KDE Neon 18.04.

It’s a good distro, so far. It does the things I expect of it. I’ve added the Cinnamon desktop environment as I’m used to the key combinations (hotkeys) to do desktop switching. I’ve even got the Nemo file manager properly opening a terminal and this is due in large part to the great Ubuntu and Mint communities out there on the old interwebs.

I have done quite a bit of Development work while in furlough (again thanks Covid-19 => you suck), but mainly the work has focused on Automated Acceptance testing with BDD. Namely:
• Python with Behave
• Eclipse Java with Cucumber
• IntelliJ Java with Cucumber

So far, the easiest I’ve found to set up and run out-of-the box is Python and behave. With IntelliJ as a close second.
With Eclipse, I fell into the old “follow an old tutorial down dependency nightmares in the waiting” trap. Yah. Probably a few changes since 2016 can do that. While I did learn a lot about Cucumber BDD from the lesson, I could not get the most trivial of cucumber-driven IDE functionality to work without error. That is, until I found this really cool tutorial cucumber eclipse maven project that made use of Maven and a pom.xml file, containing just the needed dependencies.
It then requires a few “maven” build and test steps, but then its good to go. About 98% in my view.

Why only 98%? Because if you’re anything like me, you prefer that the IDE show no errors, and no warnings. at. all.
I do get a warning that the cucumber plugin feature of discovering the step implementations will not work because it is not a cucumber project. Yeah. I know that, it’s a maven project.

I guess I’ll have to experiment more to see if I can get to 100 on my own. Hey, I do have the free time, right?

Actually there are a few more courses I’d like to complete on Pluralsight since they were cool enough to give “Free April” which is tick tick ticking away.

Anyway, if you’ve got thoughts to share, feel free to drop me a line.

Categories
Applications Desktop Environments Distributions Using Linux Your Choice

More new software

With the upgrade to Ubuntu 13.10, I was looking forward to the better performance (which it “does have”) however what I failed to consider – was what things might “stop working” post-upgrade.

I should have paid more attention to the multiple questions during the upgrade process. Questions such as “do you want to keep existing file “fileName” or use new file. I didn’t consider the impact of the decisions. Nor do I remember them to be honest.

End result – system that previously dual-booted windows and linux now would not boot directly into linux. At all. I then proceeded to turn off Secure Boot in the BIOS and after quite a few tests, trial, and error I wound up being able to get into Linux by holding down F12 at every boot and then selecting UEFI OS. Not ideal to say the least.

Got so irritated, that I was “moments away” from dumping Ubuntu 13.10 in favor of Fedora 19. But before doing that, I first made a backup of files, and followed some easy steps to convert Ubuntu into Kubuntu. Wow, I had not used KDE in such a long time, and I must say that I’m impressed with it. For many years I didn’t use it, as it simply works better on newer machines with decent Ram and hardware. Since I now have a machine with decent specs, I figured “why not” try out KDE again.

I’m writhing this post in KDE as we speak, and it’s wonderful to have the choice of booting into Unity Ubuntu, Ubuntu Flashback, or KDE. I totally enjoy the customizing and how it “gets out of the way”. I put my favorite/most used applications icons in a vertical dock at the right-hand side of my screen and set the bottom panel to auto-hide. Konsole is an awesome terminal and starts immediately.

Still, I find it a nuisance to need to press and hold F12 each time and make a BIOS selection in order to boot the system. I may yet still scrap Ubuntu entirely and go with Fedora and make use of KDE from there. While I got used to Unity via Ubuntu, I can’t say I’m a big fan of it. But then again, that’s the awesomeness that is Linux. We usually always have a choice of what we want to use right out of the box, or customize/add/remove things to our heart’s content.

Categories
Applications Desktop Environments Distributions Installing Linux Using Linux Your Choice

New Hardware, New Software

Well, new is tough to define since computers and technology move so fast.

April 2013: I treated myself to a new laptop: an i7 machine (Dell inspiron 15z) and I’m happy with it. Great specs, such as 8GB of RAM, a touchscreen, and the “dual-drive” thing where one drive is a 5400 RPM in tandem with a 32GB SSD. So far, it’s got the best response time of any computer I’ve owned.

We’ve covered the hardware, on to the Software! The machine has Windows 8 & a UEFI Secure-boot BIOS. Yes, my fellow fans of Linux, I was “well aware of the challenge” of dual-booting that lay ahead. Still, I pressed on.

Information these days it’s available from many sources. For up-to-date Linux info, I trust Chris Fisher and Matt Hartley over at the Linux Action Show podcast and have been a listener for many years – a shout out to you, Brian Lunduke as well. Miss ya bud.

While listening to the podcast, they mentioned the emerging (at the time) technology of Secure Boot computers, and the potential impact it would have on us Linux users. I could have (and there are days that I wish I had) purchased a System76 laptop – however I did want to have “some access” to a late-model windows OS “just in case”. Chris and Matt informed me that Ubuntu and Fedora were (again, at the time) the only distros that would be compatible with the UEFI Secure Boot System.

A few of you still reading this post may be saying “Booooo, down with MS Windows…” – but I must say that having the real “Microsoft word” was critical for my job hunting. Open Office just isn’t there yet (sorry Apache), and Libre Office… disappointing as well. I needed (and used) the “real deal” – I don’t enjoy saying this, but there are just some MS Apps that are not directly replaceable (yet) in the Linux world.

I will say that getting Ubuntu to properly dual-boot was an arduous process. The good thing is that I did eventually get it working with the help of various software (such as EasyBCD for Windows, and Boot Repair Tool for Ubuntu). Things worked great for a long time. Then it was time for upgrade to Ubuntu 13.10, which I now sort-of regret. The upgrade broke a lot of stuff. Broke it to the point where I had to disable a lot of BIOS things just so I could hold down F12 key each and every time I boot.

I was livid, and have so much ire about this, that it deserves to be in it’s own blog post. Stay tuned – more to come.

Categories
Applications Command Line (CLI) Using Linux

Burning Music CD Backup is not simple

Recently, I needed to backup a Music CD with my Linux OS.  Sadly, this was not simple.  This post discusses using Linux to back up a music cd. Nothing more, nothing less. I don’t intend to promote or sell my backups.  Yes, I am aware that

  • On Mac and Windows, music cd backup woes aren’t worth discussing since easily-obtainable programs exist
  • This is an area of computer use that can raise eyebrows

Why backup our music CDs?

Safekeeping in a familiar location; your personal computer

If I backed up my Led Zeppelin CD “In Through the Out Door”, then I wouldn’t be upset about it (it’s missing). Of course, music CDs are not as expensive as they were before the days of digital purchase, digital download, and youtube, but it’s the principal of it.

Easily encode & transfer music for different formats & players

For example, you make a digital backup of “In Through the Out Door”. Your wife wants to listen to it on her iPad in high quality audio format.  Your nephew would also like to listen to it, but has limited audio file type support and less storage space on his iPod Touch.  With a full digital backup of the cd, you can easily encode the songs to satisfy both requirements without having to take the original music cd out of its case multiple times.

You covered “why”, ? “how”

I will first give citation to the source of the solution that worked for me. See the first post from user noz in How to dump an Audio CD to ISO from the freebsd forums for the instructions. I found a “gotcha” (possibly) overlooked in the “Playing it” section;  Note: Playing the BIN without conversion will give you an earful of static.  This is notable, it also applies to the burn process.  You want to burn the converted (not original) bin file.  I got this wrong the first time. To avoid the mistake the 2nd time, I did the following:

  • Kept the file names the same for both original and converted bin files.
  • Used sed to replace the source (in TOC) to the converted bin file. Sed was quicker than a GUI text editor to accomplish same [find/replace] task.

For example, if your original bin = in-out-door.bin, converted bin = in-out-door-converted.bin, and TOC file is in-out-door.toc

sed -i -e ‘s/in-out-door.bin/in-out-door-converted.bin/’ in-out-door.toc

You might prefer to rename the .bin files and leave the toc as-is. It’s up to you.

Categories
Applications Mobile Web Development

Mobile Development Framework?

Hi all.  Although this post isn’t about Linux, I thought I would put a question to the group.

Can anyone recommend an easy to use and learn Mobile Framework?

I’m looking for an easy-to-use, yet flexible way to develop Web Applications for Smartphones.  So far I have been trying out Sencha Touch and it’s pretty good.  The only hiccup (which is not really a hiccup) is that the level of “paid support” is much better than the ‘unpaid’ support.  I’ve subscribed to the forum and made a few posts, but I’ve been told (on various other blogs) that you might not get a response all-that-soon since the Sencha Team is first charged with assisting the paying customers.

Again, I have no issue with this concept.  Paying customers keep your lights on.  End of story.

Other than that, I have tried jQuery Mobile, which is great, but has certain limitations on what can be scrolled and what cannot be scrolled within a given container div.

The Sencha Framework is open source, and it’s got great examples to look at and use.

If you know of another or better way to do Mobile Web sites that come close to the look and feel of a “Native” smartphone application, then please, please comment here.  Thanks all!

Categories
Applications Command Line (CLI)

cygwin error loading shared libraries

If you’ve been using Cygwin for a while, particularly imageMagick functions such as convert, you may notice some breakages on updating your cygwin version.  Errors such as:

convert: error while loading shared libraries: ?: cannot open shared object file: No such file or directory

– it’s (Cygwin) telling you that there are some libraries missing.  You’ll need to find out which ones and then run the setup/installer to fix it.

To Fix it, first use the cygwin utility ‘cygcheck’ to reveal the names of the missing DLLs.   Since this post references the convert function of imageMagick,  run the command:

cygcheck convert

to generate a list of the missing libraries/DLLs.  For more information, you can check cygwin’s documentation site.  If you’re having trouble with “montage” : then in cygwin run:

cygcheck montage

and it should list out for you the libraries that it cannot find, one such library had the word “gomp” in it.  In the cygwin setup/installer, you’ll find the library just by putting in the last few letters (gomp) should find a match for you (or at least close enough) and click the checkbox to install the library.  Another missing library was TIFF- related.

In my case, it was missing the exact same libraries as cygcheck convert.  Once the install was complete, then the ‘convert’ function was back and running as expected.

HOO-RAY!!!

Categories
Applications Using Linux Your Choice

Linux and MS Word Documents

I’m going to discuss something that’s a tad awkward.

It’s a call to improve on the Office Suite software available for Linux.  Is this really something worth writing about? It is, and I’ll tell you why.  After nearly 3 years at the same job, I find myself in a position shared by many—seeking work in a struggling economy.

The first thing I did was find a recent electronic copy of my resume.  Good news!  The most recent version just needed a little touching up.  Since I don’t own Microsoft Office software, updating an MS Word doc should be simple using Open Office dot org, yes?? Supposedly Open Office does the job for Word Documents.  Well, in my case…No.  Abysmally, failingly, No. Broke almost all formatting of the original document.  Caused me two to three times the work just to get it back to a ‘normal-looking’ state.  Mind you my resume was not heavily formatted to begin with.

But what about the FONTS?

Yes, fonts are a big deal when saving the document.  For resumes, it’s important to use a highly-readable font and keep the font size nice as well.  Chances are the resume will be scanned (for keywords) and also printed, faxed, and emailed to users of various Operating Systems.  Keeping the font as generic as possible will help.  Using exotic fonts that only come with Mac will not.  To make my text documents play nice, I installed the msttcorefonts (Microsoft TrueType Core Fonts) package.  This package will let you use fonts commonly found on the MS Windows Platform.

Ok, so is Open Office a total waste?

No, it is not.  I happen to like the Spreadsheet implementation.  For basic spreadsheets, it works great.  I have not tried to edit any MS Excel sheets with embedded macros (yet).  This is (from what I’ve heard) is the tricky part where Open Office has to do a lot of extra work to try and match all the macro languages and formulas—and on that—I’ll give them some leeway.

Your resume broke in OO.org; Can’t you use another app?

Usually, the answer to this question (when put to a Linux user) is yes.  With open source linux there are usually a plethora of substitutes available to try out.  However, when it comes to professional documents, it “just has to work” as the cliche goes.  I tried some text document office-suite alternatives.  First I tried Abiword.  Abiword also broke the formatting and made it’s own arbitrary decisions on font rendering, even though I had the correct MSTTCOREFONT installed (in this case, “Times New Roman”).  So, with the correct Font installed, it didn’t matter.  Document got very messed up.  Other alternatives include purchasing a licensed CD of MS Office and to make it work in Linux, Crossover Office (by Codeweavers), which I would consider purchasing.  MS Office (however) is not high on my list of things to buy.

Abiword is not a bad program.  I’ve written college term papers with it.  This was a start-to-finish document saved as *.doc as opposed to a document created in MS Windows.  I would just like to see Linux have the ability to inter-operate with .doc files that have a table as part of their layout.  I’ve used and recommended Open Office both on the Linux and the MS Windows platform and it usually works great.  Maybe I expected too much out of it?  Maybe tables in an MS Word Doc are not consistently imported into Open Office.

Although I like the idea of the Open Document Format, it’s not something I can count on for across-the-board compatibility with the business world.  This is critical.  If an employer can’t open your resume because it’s in .odt format and their version of MS Word is earlier than 2007, they will simply discard your resume.  They will not bother to read a file they can’t open.  It’s also possible that the .odt file format will make someone (not in the know) uneasy.  They are expecting a .doc file, so to keep yourself “in the game” it’s probably best to send them a .doc file for a resume.

Summary: how can we overcome these limitations?

Use whichever word processor program you want to (as long as it can save as MS Word format *doc).  Send your document to a friend or family member that has the “real” Microsoft Word on their computer and let them open, view, and print your document.  If it looks good, and prints as you expect, then you’re all set.  If not, then try another program or possibly take some time to reformat your document.

What did I wind up doing?

My final solution was to create the resume in iWorks for MAC (as I now use a macbook dual-booted with Linux).  Even if you’re writing your resume on MAC, remember fonts.  The Times New Roman font is recommended as the “generic” font most widely used for this purpose.  Do you have to use it?  No, you don’t.  Just remember the person receiving your resume will need to have the font on his/her computer or else your resume runs the risk of breaking while they see it or print it.  Not a good idea.  Resumes are typically given very little attention to start with as they are quickly scanned.  If a resumeI know Linux users typically do not lean towards conformity, but this is one time when it will work to your advantage.

For the Linux side of the computer, I rebuilt the resume, not relying on tables for formatting in cases where you want to “right-align” dates on the job.  This I felt was a safer “universal approach” and this version became my “default” resume version for better performance on as many platforms as possible.

I put the dates on their own line and right-aligned that line. But again, I was trying to get this done in short time to aid in job-hunting.  What works for you may be something altogether different.  Good Luck

Categories
Applications Command Line (CLI) Introduction Your Choice

Favorite CLI Linux Apps: Intro

We’re talking about the Linux command line…again.  Don’t worry, I won’t bore you (hopefully). If you’re still on this page, I commend you.

Remember, a Linux user should never feel forced to use the terminal or “console”, but knowing how to use it will help you get the most out of Linux.  The speed, simplicity, and the consistency are what drive me to use it nearly every time I’m at a Linux Desktop.

Ok, here’s a list of programs that are typically not in a distro by default.  These programs are intentionally run from a terminal prompt.

Categories
Applications Command Line (CLI) Your Choice

Favorite Linux CLI Apps: Emacs

Emacs text editor (also known as emacs21-nox*)

[*The GNU Emacs editor without X support] is not usually part of a distro install—but it should be.  When you need to quickly edit a text or config file, a shell command can open the file, let you save changes, and then return you to the shell prompt.  Default console-based text editors (pre installed) are vi or nano.  I’ve tried them both.  I like emacs better.  At the time of writing, Synaptic in Crunchbang Linux 9.04 shows the console emacs as “emacs21-nox”

There are split camps and heavy debates as to which is better.  Just google  “vi vs emacs”.  It is useless for me to jump on the debate bandwagon.  Just know that they are similar, but operate differently.  Both edit and save text in a console/terminal.  Both offer no formatting or styling like a GUI word processor.  However, vi is a “modal editor” meaning that you switch back and forth between “insert mode” (for typing) and “command mode” (to issue file, search, or text-related commands.  Emacs is all one mode, where keystroke combos invoke commands.

Forget the evangelism or the “he said/she said bull$h1t”.  Try them both and see what you like.  You can always uninstall an unwanted application program with Synaptic.

Categories
Applications Command Line (CLI) Web Development

Favorite CLI Linux Apps: php5cli

php5cli runs PHP commands in a shell

PHP is a scripting language used on many websites.  It allows a page to do “dynamic” things (such as changing a page’s appearance based on user input, time or date, etc.)

One of the things I do wtih php5cli (or php in the shell) is check a PHP script for errors.  This saves you the trouble of running your PHP-based web page in a browser (which may have bad side effects).  ??Bad side effects?? Sure, what if your page is supposed to overwrite a file, and then hits an error.  It may erase a perfectly-good file.  Ok, enough gloom and doom talk.  Let’s say you wanted to check “myPHPscript.php” for errors. Run the following command in a shell to check it for errors before it runs/executes.  The option is a lowercase L (l) not a digit.

php -l myPHPscript.php

Another good use of PHP in a terminal is to generate HTML code.  There’s a certain frustration in coding up an entire web site, and then needing to go back and make a change across all your pages.  A time (and headache) saver is to let PHP do the “heavy lifting” for you.  What does this mean?

Basically, you set up a series of instructions for a script to follow.  Then, based on your needs, you make the script “write” different output based on a variable whose value may change.  Sometimes this involves changing the size of table cells, but it could apply to writing an entire series of web pages.  It comes in way handy when you’re looping over database results (and deciding to print the 2nd line of an address to the page).

In summary, when you’d have to change the same attribute in many, many places, and change them a few times, manually finding the attribute (for example a web link), you don’t have to manually (not mention “tediously”) hunt for the item(s) you want to change.  Install php5cli with Synaptic (or other) package manager. This installs any needed dependencies.