Cloud Based Software
Installing a new PC reminds you of the applications that you use and find essential. Some of the main applications I use these days ensure that my data is replicated using the internet as a whole.
- Firefox sync – Synchronised book marks, windows and history across all computer. Foxmark did this originally really pretty well, but then almost closed and that forced a change to firefoxes now built in version. This is just a matter of setting up an account and then adding machines to it. Awesome.
- Drop box – Drop box was one of the first cloud based directory sharing. It only really supports sharing of a single directory, but gives you a free 2 gb shared space and has decent iPad and iPhone apps. It also supports sharing publicly files and versioning of files if anything gets deleted. It works with Linux, iOS and Windows too.
- Team Drive – Team drive lets several different people in your team synchronise one or more file systems / directories. It works with Linux, iOS and Windows too. It freely allows multiple team members to join the team and shares the files with everyone.
- Evernote – Ever note is a windows / web application that allows you to note a tag notes. This is a hell of a lot easier than trying to synchronise notes accross outlook / evolution / thunderbird / iOS. Instead it just works, lets you clip things and write new notes. Import pictures and pdfs. It is very cross platform and works with a lot of smart phones as well. By filing your notes in to notepads it also allows organisation and tagging of the notes for quick retrieval.
- Synergy – Synergy is a different kettle of fish. It is not cloud but cross plaforms cross machine, letting you share your mouse and keyboard between multiple computers on your desk. One of the best features of it is you can even share all of your clipboards. All you need is a network connection. Synergy is cross-platform (works on Windows, Mac OS X and Linux).
- LogMeIn – Log me in is remote desktoping on windows devices, from a browser. It works very well and my only real complaint is I can’t run it to connect to a Linux machine. By adding a client application that connects to the log me in servers, the machines can be remotely managed and bypasses firewall open server socket problems and nat’ing. Pro version include a iPad/iPhone version and remote management / multiple machine management.
- Kitty – As the kitty web site itself says “KiTTY is a fork from version 0.62 of PuTTY, the best telnet / SSH client in the world.”. It is now the best telnet / ssh app, especially the portable version, which if run from drop box, means you can maintain multiple machine configurations easily. It supports solid password integration, better than the windows tab management version Putty Connection Manager ever did. And it runs nicely under wine for Linux.
Photoworld on Ubuntu Linux
One of the constant complaints about running Linux at home is how difficult it is to install applications.
I was impressed to see that Photoworld did a linux version of there software. Installation was not too painful. Download a perl script and EULA in a compressed tar.
Extract it with archive manager.
Execute it from the command line with
perl install.txt
Confirm the EULA and exit it.
But once it had been install it immediately did not work.
Running it from command line told me that it could not find libgomp.so
“error while loading shared libraries: libgomp.so.1: cannot open shared object file: No such file or directory”
I checked my machine (a 64 bit installation of Linux Ubuntu 11.04) and found the file. I tried adding it to the path, copying and linking the file but all I got from my efforts were
./PHOTOWORLD: error while loading shared libraries: libgomp.so.1: wrong ELF class: ELFCLASS64
Eventually I discovered there is a 386 version of the libgomp library I needed for this application and quickly managed to solve my problems and install it with a
sudo apt-get install libgomp1:i386
Combine to avi files together
On Linux, simply use mencoder
This command says copy using existing audio codec (-oac) and copy using existing video codec (-ovc).
mencoder -oac copy -ovc copy <file1> <file2> -o <output_file>
Vegetarian Meal Ideas
If you are a vegetarian finding some interest meal ideas can sometimes be a challenge. Whilst there a lots of recipes out there (in the wild) coming up with something which ticks the tasty, healthy, low fat and not too time-consuming boxes is harder than it should be. So here is my list of ideas. Obviously the ingredients and variations can be changed depending upon the season. My suggested accompaniment (where listed) can be altered depending upon taste. Sometimes to save time and effort you can buy the main part of the meal ready prepared.
- Butternut Squash and sage risotto.

- Cheesy Veg Lasagna
- Green Thai Vegetable Curry
- Courgette and Mushroom Tian
- Quiche with Salad and new potatoes
- Cheese and Bean Baked potato.
- Vegetarian Paella
- Sunday Dinner – Nut and Carrot Roast with Roast Potatoes/Mash, Broccoli, Red Cabbage and Beans.
- Sunday Dinner – Goats Cheese Wellington
- Chick Pea Curry
- Vegetable Curry
- Macaroni Cheese
- Stuffed Pasta with Tomato sauce
- Meat free Spaghetti Bolognese
- Mixed bean chilli
- Mixed bean tortilla wraps
From Meatless Mondays site the following titles (all links go to MeatlessMondays.com and all credit is given to them)
- Acorn Squash Chickpea Bulgur

- Almond Pesto Pasta with Zucchini
- Aloo Gobi
- Antipasto Salad with Potatoes
- Apple, Pecan and “Sausage” Stuffed Acorn Squash
- Artichoke Navy Bean Chili
- Asparagus Champagne Risotto
- Asparagus Morel Risotto
- Autumn Pasta Carbonara
- Baked Indonesian Tofu
- Baked Orzo Ratatouille
- Barbequed Tofu
- Barley Risotto
- Basil Balsamic Pasta
- BBQ Tart Cherry Tempeh
- BBQ Udon Noodles with Plum
- Bean Burgers with Chipotle Spread
- Beany Red Wine Chili
- Beet, Pear & Endive Salad
- Bell Pepper Tempeh Fajitas
- Black Bean Carrot Posole
- Black Bean Corn Tamales
- Black Bean Tostadas
- Black Eyed Pea Stuffed Squash
- Bloody Mary Chili
- Braised Cabbage Rolls
- Broccoli Cauliflower with Pine Nuts & Raisins
- Brown Rice Apricot Pilaf
- Brûléed Squash with Pepitos
- Bruschetta
- Buddha’s Delight
- Butternut Squash Chickpea Chili
- Butternut Squash Chili
- Cajun Chili Cups
- Carrot Walnut Tagliatelle
- Chana Chai Masala
- Chef Ian’s Macho Monday Chili
- Chickpea & Spinach Curry
- Chickpea Burgers with Mint Raita

- Chili Chocolate Pumpkin Pasta
- Chili Con Lentils
- Chili Verde
- Classic Vegetable Soup
- Cocoa Chili
- Coleslaw Tempeh Joes
- Cowboy Chili
- Cozy Cashew Chili
- Cranberry Almond Stuffed Squash
- Cranberry Apple Glazed Tempeh
- Creamy Porcini Pasta
- Creamy Tomato Gnocchi
- Crockpot Mexican Chili
- Cumin Corn Chili
- Curried Lentils with Mint Rice
- Curried Squash Stuffed Portabellas
- Curried Summer Squash with Yogurt
- Curry Apple Fried Rice
- Easy Minestrone
- Edgy Veggie Chili
- Eggplant Casserole
- Eggplant Pepper Pasta
- Eggplant Polenta Quiche
- Eggplant Tempeh Bolognese Napoleon
- Eggplant Tempeh Tacos
- Eggplant Zucchini Bean Loaf
- Enchiladas
- Escalivada (Catalan Roast Vegetables)
- Fall Vegetables in Red Wine Sauce
- Fiesta Fantastica Wrap
- Garlic-Rosemary Broccoli and Mushrooms
- Gianna’s Three Bean Chili
- Ginger Cherry Quinoa
- Ginger Tofu with Asian Greens
- Gingery Pear Crisp
- Gratin Provencal
- Great Northern White Chili
- Green Bean Ginger Spaghetti Stir Fry
- Hazelnut Quinoa Stuffed Peppers
- Hearty Tomato-Eggplant Pasta
- Honey Roasted Squash Rings
- Hopi Vegetable Stew

- Indian-Style Chickpeas
- Indonesian Coconut Curry
- Kachumber (Mixed Vegetable Salad)
- Korean BBQ Tofu Tacos
- Lasagna Floret
- Layered Taco Salad
- Lemon Asparagus Penne
- Lentil Burgers
- Lentil Shepherd’s Pie
- Lentil Winter Warmer
- Lima Bean Pasta
- Lime Wild Rice Lentils
- Lotsa Green Lasagna
- Maitake Squash Blossom Fettuccine
- Malai Kofta
- Maple Sweet Potato Ravioli
- Meatless Jambalaya
- Meatless Stuffed Peppers
- Mexican Christmas Eve Fruit Salad
- Michelle’s Creole Chili
- Middle Eastern Lentils & Rice
- Mighty Meatless Meatloaf
- Miso Morel Pasta with Peas
- Mixed Bean Chili with Sweet Potato
- Moroccan Butternut Squash Saute

- Moroccan Pumpkin Stew
- Moroccan Pumpkin with Almond Couscous
- Mushroom Pie
- Mushroom Ragout
- Mushroom Wellington
- Mustard Crusted Tofu with Strawberries
- Niktor’s Rootin’ Tootin’ Chili
- No Nuts Sesame Noodles
- Nut Loaf
- Nutty Vegetable Saute
- Orzo Spinach Soup
- Pasta e Fagioli
- Pasta Primavera
- Pea and Avocado Penne
- Peachy Chili Bean Tacos
- Persimmon Quinoa Stuffed Squash
- Pink Cauliflower Soup
- Pinto Bean Falafel with Avocado
- Polenta Pizza
- Portobello “Pizzas”
- Portobello Mushroom Burgers
- Pumpkin String Bean Curry
- Pumpkin Walnut Rice Stack
- Quick Quesadillas
- Quinoa Chili
- Quinoa Zucchini Burgers
- Raisin Walnut Spiced Rice
- Rasta Rice and Peas
- Ravioli with Pumpkin Seed Pesto
- Red Lentil Bean Chili
- Red Lentil Quinoa Burgers
- Red Miso Eggplant
- Red Pepper Eggplant Chili
- Red Zone Chili
- Ribollita
- Risotto Shells Broccoli Rabe
- Roasted Cherry Tomato Rotini
- Roasted Eggplant with Cilantro Yogurt
- Roasted Pepper Pecan Pesto Pasta
- Roasted Potatoes with Orange Couscous
- Roasted Pumpkin Garlic Lasagna
- Roasted Root Vegetables
- Roasted Summer Squash Spaghettini
- Roasted Tomato Black Bean Soup
- Root Vegetable Chili

- Sautéed Artichokes in Lemon
- Savory Baked Mushroom Rolls
- Savory Ranch Tacos
- Seitan Baked Ziti
- Seitan with Mushroom Gravy
- Sesame Tempeh with Green Beans
- Shiitake Pumpkin Penne
- Slow Cooker Corn Chili
- Smokey Chickpea Burgers
- Southwestern Squash Stew
- Spaghetti with Lentil Sauce
- Spanish Toast with Spinach, Raisins & Pinenuts
- Spiced Potatoes with Lentils & Barley
- Spicy Chickpea Ragout
- Spicy Couscous and Chickpeas
- Spicy Lentil Pomegranate Tart
- Spicy Peanut Rice Noodles
- Spicy Pilaf with Cajun Chickpeas
- Spicy Stuffed Seitan
- Spicy Teriyaki Chickpeas
- Spinach Black Bean Burritos
- Spinach Corn Enchiladas
- Spinach Tofu Curry
- Spinach Walnut Bean Tart
- Spinach With Chickpeas
- Spring Veggie Pesto Penne
- Sprout Beet Burgers
- Squash Sunchoke Mac & Cheese
- Stewed Green Tomatoes
- Stuffed Baked Squash
- Stuffed Mushrooms
- Stuffed Potatoes Primavera
- Succulent Tofu
- Summer Tomato Cilantro Spaghetti
- Sweet or Savory Crepes
- Sweet Potato Biscuits
- Sweet Potato Burritos
- Sweet Potato Caramelized Onion Stew
- Sweet Potato Chili over Couscous
- Sweet Potato Curry
- Sweet Potato Enchiladas
- Sweet Potato Pot Pie
- Sweet Potato Shepherd’s Pie
- Tagliatelle with Mushrooms
- Tempeh “Chicken” Salad
- Tempeh in Maple Pomegranate Sauce
- Three-Bean Cassoulet
- Tofu Almond Stir-Fry
- Tofu au Vin
- Tofu Palak Paneer
- Tomato & Herbed Feta Pasta
- Tomato-Zucchini Bake
- Tres Frijol Bandito Chili
- Twice-Baked Buttermilk Potatoes
- Vegetable Biryani

- Vegetable Slaw with Lemon-Mustard Dressing
- Vegetarian Paella
- Veggie Chow Mein
- Veggie Chowder
- Whit’s Easy Veggie Chili
- Wild Rice Black-Eyed Pea Patties
- Winter Harvest Citrus Pasta
- Winter Vegetables with Farro
- Winter Warmer Stew
- Yellow Squash Chili
- Zesty Bean Gumbo
- Zesty Cabbage Curry
- Ziti with Sun-Dried Tomato “Cream”
- Zucchini Boats
- Zucchini Pancakes Topped with Diced Tomatoes
- Zucchini Tomato Curry
Confirmation dialogs.
2932One of my customers recently asked for an additional confirmation dialog.
Whilst in general it is ok to confirm that an action should be performed it is important not to add confirmations and every time a confirmation dialog is added it needs to be accessed is this really necessary. What are the effects of performing this action accidently.
Excess confirmation are the bane of user life – personally I despise them, they kill productivity and become meaningless as the more “Are you sure you want to do this?” confirmations become ignored and not an extra layer of protection.
As an interface designer, I need to argue against adding them unnecessarily. An operator should not have privileges if they can’t be careful enough. And if they do an action accidently and it is not dangerous then it should not be difficult to find what you did and undo it.
Cheesy Veg Lasagna – for 6
580Oven 190 degrees C in a 9inch x 12 inch dish (2 inch high)
- 9 Sheets of fresh lasagne
- Tbsp olive oil
- 1 Tsp mixed herbs
- 1 tsp Oregano
- 1/2 Tsp paprika
- 1 head broccoli – in small pieces
- 4 cloves of garlic
- 1 carrot and 1 courgette in julienne strips
- 1 onion chopped
- 2 peppers chopped
- 1 tin chopped tomatoes
- 1 tbsp tomato purée
- 40g marg
- 6 tbsp plain flour
- 700 ml milk
- 80g parmesan
- 250g frozen spinach – thawed and squeezed out
- 150g cottage cheese
- 250g ricotta
- 400g shredded mozzarella
- Salt and Pepper to taste
- 1/2 tsp Fresh grated nutmeg
- Heat oil. Fry onion for 2 minutes. Add garlic, broccoli, carrots, peppers, courgettes, tomatoes and tomato purée Add herbs and season. Cook for approx 7 minutes.
- In separate pan – melt butter, stir in flour and add milk bit by bit. Cook 5 minutes. Stir in 3/4 of the parmesan, salt, pepper and nutmeg. Cook for a further 1 minute. Remove from heat and add spinach and stir. Reserve one cup of this mixture separate for later.
- In bowl mix ricotta and cottage cheese and stir well – set aside.
- Spread small amount of spinach mixture in dish, lay lasagne sheets on top then layer 1/2 ricotta mix, 1/2 veg mix, 1/2 spinach mix and 1/2 of mozzarella – then lasagne sheets and repeat layers.
- Finish with lasagne sheets and add reserved cup of spinach mixture, parmesan and mozzarella.
- Bake for 35 minutes at 190 and rest for 5 – 10 minutes before serving.
Compare the meerkat – My day in meerkovo.
3051Well you can just imagine how happy I was to be awarded this great honour!
Buffers in Vim
45732I have been a long time user of Vim but started to get into some of the more advanced commands and one of my favourite with vim is the use of buffers and splitting the screen. Please note buffers and screen splitting functionality are only available in later versions of vim – version 5 onwards.
Buffers
You can edit multiple files simulatenously.
:e <filename> – To edit a secondary file
:ls – To list all files you are currently editting
:b<1> – To jump to a specific edited file.
:bn – To jump to the next file in the buffer
:bp – To jump to the previous file in the buffer
These last two commands are nice to place into you vim resource file to map a ctrl sequence onto the commands to quickly move between them.
Screen Splitting
Screen splitting is a step beyond and complimentary to buffers. Screen splitting allows to see the window split across the center of the current file (either horizontally or vertically) and allows you to see the currently editted file. This is extremely useful if you want to see your declarations or definition of a piece of code (especially in the same file). This is much prefered to opening a secondary file as you do not get warnings about swap files nor do you need to keep in mind where you can edit as all edits are to the same file.
<ctrl-w> s – Split screen (horizontally)
<ctrl-w> v – Split screen (vertically)
<ctrl-w> c – Close current screen split
<ctrl-w> k – Move up a screen split
<ctrl-w> j – Move down a screen split
<ctrl-w> l – Move right a screen split
<ctrl-w> h – Move left a screen split
<ctrl-w> r – Reverse screen splits
Screen virtual terminal emulation.
Finally as a tip – If you are working with Linux up can use the screen virtual terminal emulator. This will allow you to swap sessions on a virtual terminal
Use the command screen from a terminal session to start the virtual terminal emulator
Once running you can
<ctrl-a> c – To create a new session (no need to log in another session
<ctrl-a> k – To kill the session
<ctrl-a> ” – To list all your running screen sessions
<ctrl-a> A – Will allow you to name (title) each session
<ctrl-a> 1..9 – Will swap you to a given session
<ctrl-a> d – To detach from the session
If you detach, the screen session will continue to run, you can see what is still running with
screen -ls
then re-attach again if you are running just a single one with no session name, or just enough to make unique if more than on is running.
screen -r [session name]
Another use of screen permits you to run a session and let multiple users attach and work in it simulateously. This is done by running against a special resource file
screen -c .my_resource
Create .my_resource containing (for example)
sessionname <The session name>
shelltitle <The session name>
multiuser on
Colourful grep on aix.
1208602Linux implements a decent version of grep and highlights the search term using colour. Whilst AIX terminals can support colour (if your term session supports it) with escape codes I have not seen any way of making grep or egrep etc colourful.
On linux you simply add the parameter –color=auto such as
grep --color=auto SearchTerm {files}
Well as I couldn’t find anything on google I decided to implement something. And this is what I came up with. However the one bug I didn’t manage to resolve was If searching case insensitively the highlighting will only find the correct case. As sed does not support case insensitively this is a problem to solve. If nawk or gawk is installed, they do support it with the -i parameter.
#!/bin/ksh
#************************************************************************
# *
# Module Name : grepc.sh *
# Author : Dave Jarman +
# *
# Edit Record (most recent edit at top of list) *
# Date By CF Comments *
# --------- --- ---- --------------------------------------- *
# 5-Apr-12 DCJ i Use ampersand in sed search results as
# matched string to better handle regular
# expressions (thanks Zolo).
# 20-Sep-11 DCJ New file *
#************************************************************************
#
# Executes grep but with the escape codes to colourise the output.
#
# Known Bugs:
# If searching case insensitively the highlighting will only find the
# correct case. As sed does not support case insensitively this is a problem
# to solve. If nawk or gawk is installed, they do support it with the -i
# parameter.
#
# Other colours are available. Use the following lines.
# Blue echo "s/$QRY/\033[1;34m$QRY\033[0m/g" > $TMP/$$.sed
# Light blue echo "s/$QRY/\033[1;36m$QRY\033[0m/g" > $TMP/$$.sed
# Inverse blue echo "s/$QRY/\033[44;37m$QRY\033[0m/g" > $TMP/$$.sed
# Red echo "s/$QRY/\033[0;31m$QRY\033[0m/g" > $TMP/$$.sed
#************************************************************************
# Check for any options and save them
OPT=
while [[ $1 = [-+]?* ]]
do
OPT="$OPT $1"
shift
done
#
# Get the search string.
QRY=$1
shift
#
# Create a sed script to subsitiute for the appropriate colour.
# Show the search term in Blue
# echo "s/$QRY/\033[1;34m$QRY\033[0m/g" > $TMP/$$.sed
echo "s/$QRY/\033[1;34m&\033[0m/g" > $TMP/$$.sed
# echo /usr/bin/grep $OPT "$QRY" $* "|" sed -u -f $TMP/$$.sed
/usr/bin/grep $OPT "$QRY" $* | sed -f $TMP/$$.sed
#
# Clean up the tmp file *
rm $TMP/$$.sed
#
# Finish
exit 0
The Earth and moon from Juno Space Craft.
23923
From this distant vantage point, the Earth might not seem of any particular interest. But for us, it’s different. Look again at that dot. That’s here, that’s home, that’s us. On it everyone you love, everyone you know, everyone you ever heard of, every human being who ever was, lived out their lives. The aggregate of our joy and suffering, thousands of confident religions, ideologies, and economic doctrines, every hunter and forager, every hero and coward, every creator and destroyer of civilization, every king and peasant, every young couple in love, every mother and father, hopeful child, inventor and explorer, every teacher of morals, every corrupt politician, every “superstar,” every “supreme leader,” every saint and sinner in the history of our species lived there – on a speck of dust suspended in a sunbeam.
Image credit: NASA/JPL-Caltech