Marcin Juszkiewicz: My time at Linaro is over
Today is my last day at Linaro. And this time it is for real (compared to “So long, and thanks for all the fish” post).
Often people asked me what I like at Linaro. It is openness with the “upstream first!” motto and the team. People with wide experience, open to share their knowledge, many FOSS world celebrities… I will miss those guys.
And this time I will not write summary of what I did at Linaro — most of the things worth mentioning were already mentioned (see archives).
So today I am changing mailing lists subscriptions, pass over maintenance of OpenEmbedded layers to Riku Voipio and other things related to my leave.
But who knows when our tracks will cross again. I think we will meet at FOSS conferences…
All rights reserved © Marcin Juszkiewicz
My time at Linaro is over was originally posted on Marcin Juszkiewicz website
Benjamin Kerensa: Recognition for FOSS Mentoring
Yesterday afternoon I received a certificate of appreciation from the Western Oregon University (WOU) Computer Science Department for my work from 2012 through 2013 mentoring WOU students on contributing to the Ubuntu Community.
As you can imagine receiving this put a smile on my yesterday afternoon. It is very rewarding to know that there are students who I mentored who are still contributing to Ubuntu and may make a career out of Free and Open Source Software.
I would like to plug Teaching Open Source a neutral collaboration point for those teaching or advocating free and open source software in academic settings. Additionally, Mozilla is also doing a lot of great stuff to get students involved in open web and free and open source software.
Thanks to everyone who helped make the mentorship project possible!
Mohamad Faizul Zulkifli: eepKeyer - Amateur Radio Contest CW Keyer For Linux
It has innovative design that allows maximum user customization with three banks of F keys for fast mode switching.
User can also use it as a CW keyboard keyer and set their preferable CW speed.
eepKeyer was developer by Mike K6EEP. Try it today, source code available here http://www.hamsoftware.org/
Jono Bacon: Fortunate
My parents came out to visit this week and I took a week off work to spend with them. We had not seen them for 18 months in person (pregnancy and babies make travel to England rather challenging), but we Skype video-chat pretty regularly. It was the first time they were meeting Jack and they absolutely fell in love with him. The feeling was definitely mutual on the baby side of the bargain.
It was a fantastic week. We took a weekend trip to Tahoe, had an evening with Erica’s dad and her brother and his girlfriend, another evening with Erica’s mum and step-dad, and of course, plenty of time with them with Erica, Jack and I.
They left to go back home today.
This afternoon I have felt rather empty; I miss them both.
I am tremendously thankful for my life, and thankful every day for my beautiful wife and baby, and my wonderful British, American, and Italian families. I knew I would feel this way when they left, but an awesome week with my family was well worth it for a shitty few days missing them.
Sometimes the empty moments just make you realize how full your life really is.
Mum and dad, I love you both, and can’t wait to see you in September.
Joe Liau: Hello, My Name is
The Phantom Menace
This project is awesome because we are all part of the same community and are all working on the same thing together. This project is important because it’s free and open, and it is reaching out to all kinds of people. This project is revolutionary because it is taking risks, redefining concepts, and developing more than just a product.
This project has a name: Ubuntu. And, therein lies the problem.
I’m by no means suggesting that this name changes; it’s the right name. However, I suggest that we make the effort to truly understand it properly, and at the very least, pronounce it properly.
WAIT!
Before you stop reading, please consider what your own explanation of the project name, and how you would present the project to someone new. How do you want that person to perceive the project, and how do you want that person to perceive you–the representative?
Think about the misinterpretation that already exists within daily conversation, so we need to make sure that we’re all on the same page.
I believe that one key to the success of Ubuntu is in its name. There is so much meaning loaded into that one word that it would be a shame to not present it properly.
So, I registered a blueprint: https://blueprints.launchpad.net/ubuntu/+spec/ubuntu-pronunciation.
That Which We Call A Cliché
We speak different languages, so it would be ideal that we can have at least one word that is common across the board, especially when it is the matter at hand.
There are lots of words in various languages that are pronounced differently depending on accents or certain history. However, “Ubuntu” is not just a word; it’s a name.
I have a surname that is commonly mispronounced (even by people from the same origin), so I’m used to mispronunciations and shrug them off. Do I stop being who I am based on that? No. But, I’m not going to respond if I don’t recognize the sound of my name.
This discussion is getting kind of old, but it might be necessary. How do you start a war? You create fear of imminent war. How do you create that fear? You give someone a reason to be afraid. I’m terrified that this old issue is a non-issue.
Small Potatoes
When it comes to Ubuntu, we are talking about a name for something that is quite abstract. We can’t exactly pick up an “Ubuntu” and show it to someone. For those of us who don’t care about pronunciation, it is possible that we think Ubuntu is only a piece of software.
Allow me to shed some light on the 6Cs of Severity around inconsistent pronunciation:
- Confusion – If we are all saying “Ubuntu” differently, then how can we be sure we’re all working on the same thing? Aside from contributors, those who have yet to discover ubuntu will be confused out in the wild.
- Consensus – If we cannot agree on the name (a very basic element) of the project, then will we really agree on anything else?
- Constructs – Consciously or subconsciously division may occur.
- Claims/Control – Taking false ownership of a word/name and changing it for your benefit can be a form of racism. This may be unintentional. Nevertheless, if we force a name to be pronounced according to our own way instead of its origin, then we are putting ourselves higher on the imaginary (albeit evident) hierarchy of cultures.
- Convention – The longer this goes on, the harder it will be to change if necessary.
- Craziness – This is clearly making at least one person crazy.
Many of us (me…frequently) mispronounce things with no malicious intent. But, it is definitely and awkward situation to have to deal with so frequently.
Bad Breath
So, I was at one of our Ubuntu meetup events. I met someone new, and we started talking. By some coincidence we started talking about Ubuntu. However, as the word “Ubuntu” left my mouth, the other guy’s face went blank as if I had spoken some strange word from a strange language. My first thought was, why are you part of the Ubuntu meetup group if you don’t know what Ubuntu is? Then, I realized that he didn’t pronounce the word the same way that I did.
This put me in a very socially awkward situation (more than usual). From my point of view, it was as if the guy had really bad breath. I didn’t want *it* to come out of his mouth. Yet, I was too shy/embarrassed to mention to say anything. What’s the protocol? Do I say something? Do I casually offer him a Mint as a superficial fix? Do I just ignore it and hope that it will go away?
At this point I’m wasting time even thinking about this, and having to re-explain ourselves hindered any further conversation. Neither of us were willing to change our pronunciations, no matter how many repetitions occurred. Moreover, was the other guy thinking the same thing? The people at the table next to us probably thought we were two fools talking about two different things.
“Now I see, it is I that had been the biggest [fool] of all!” And, I pity the fool. I don’t want to be tormented by this, and yet I cannot let it slide. Perhaps it’s because it hits so close to home.
Grievous Goats
I introduced Ubuntu to my family. I made the mistake of not properly educating them on origins and pronunciation. Now every time that a computer question arises, my irritation is amplified by a pronunciation discrepancy. Ubuntu has become a household word, but not in the way that I had intended. It’s clear that those in my family who pronounce one way, and those another, also differ on the opinion of the source of computer problems.
I have noticed a very high correlation between certain pronunciations of “Ubuntu” and dissatisfaction with Ubuntu. Will saying “Ubuntu” a certain way improve your experience? Probably not. Then again, maybe it will. I also sense a high correlation between those who care to find out the “hows” and the “whys” and those who have positive experiences with Ubuntu.
Of Moles and Men
I understand that my discomfort comes from the possibility that I might believe that there is one right way to pronounce “Ubuntu.” But, I’m not even saying that I’m right. I’m pointing out the problematic pachyderm. There’s one in the chamber, and it’s growing extremely obvious that people are aware, but we need to pull the trigger on the decision before we start pointing things in the wrong direction.
I support a project, and I don’t even know how to say its name? Let’s minimize this distraction.
So, I move that we standardize the pronunciation of the name of our horse, so that when we cheer for it, we’re all cheering for the same winner. This will bring us together. This will make us sound professional. This, I believe, will be cornerstone that will launch Ubuntu success to Mars!
But Don’t Take My Word For It
I registered a blueprint: https://blueprints.launchpad.net/ubuntu/+spec/ubuntu-pronunciation.
Now what we know why…
Here are some ideas for pronunciation:
- http://www.youtube.com/watch?v=CGox0EKqiaE#t=30s
- http://www.youtube.com/watch?v=ftjdDOfTzbk#t=26s
- http://www.youtube.com/watch?v=IxffVEHNyYs#t=1m5s
- http://www.forvo.com/search/ubuntu/
Here are some ideas for implementation:
- Add pronunciation in the installation slide show
- Add pronunciation on www.ubuntu.com
- Add pronunciation in a “getting started” document/application post-install
- Add pronunciation in Ubuntu Advocacy Kit. DONE!
To be continued… on the blueprint.
Charlie Smotherman: International Space Station
I stumbled across this story on ExtremeTech, “International Space Station switches from Windows to Linux, for improved reliability”
This is a partial re-post of that article:
The United Space Alliance, which manages the computers aboard the International Space Station in association with NASA, has announced that the Windows XP computers aboard the ISS have been switched to Linux. “We migrated key functions from Windows to Linux because we needed an operating system that was stable and reliable.”
In specific, the “dozens of laptops” will make the change to Debian 6. These laptops will join many other systems aboard the ISS that already run various flavors of Linux, such as RedHat and Scientific Linux. As far as we know, after this transition, there won’t be a single computer aboard the ISS that runs Windows. Beyond stability and reliability, Keith Chuvala of the United Space Alliance says they wanted an operating system that “would give us in-house control. So if we needed to patch, adjust or adapt, we could.” It’s worth noting that the ISS laptops used to run Windows XP, and we know they’ve been infected by at least one virus in their lifetime: in 2008, a Russian cosmonaut brought a laptop aboard with the W32.Gammima.AG worm, which quickly spread to the other laptops on board. Switching to Linux will essentially immunize the ISS against future infections.
The laptops that were upgraded belong to the station’s OpsLAN. The crew use the OpsLAN to perform day-to-day activities, such as viewing stock inventory, controlling scientific experiments, or checking their current location. Presumably the laptops used to run bespoke Win32 apps on Windows XP, and now those apps have been re-written to work on Linux — hopefully they’re not being emulated in WINE. To get the astronauts and cosmonauts up to speed, they will be trained by the Linux Foundation.
To be honest, we shouldn’t be too surprised at the ditching of Windows. Linux is the scientific community’s operating system of choice. CERN’s Large Hadron Collider is controlled by Linux. NASA and SpaceX ground stations use Linux. DNA-sequencing lab technicians use Linux. Really, for applications that require absolute stability, which most scientific experiments are, Linux is the obvious choice. The fact that the entire OS is open source and can be easily customized for each experiment is obviously a very big draw, too.
WOW !!!
Good job Debian
The Fridge: Mark Shuttleworth closes Ubuntu bug #1
The first bug filed in the Ubuntu project was filed by Mark Shuttleworth on August 19th, 2004: Microsoft has a majority market share
Today he marked the bug “Fix Released” with the following comment:
Personal computing today is a broader proposition than it was in 2004: phones, tablets, wearables and other devices are all part of the mix for our digital lives. From a competitive perspective, that broader market has healthy competition, with IOS and Android representing a meaningful share (see http://www.zdnet.com/windows-has-fallen-behind-apple-ios-and-google-android-7000008699/ and in particular http://cdn-static.zdnet.com/i/r/story/70/00/008699/meeker620-620×466-620×466.jpg?hash=ZQxmZmDjAz&upscale=1).
Android may not be my or your first choice of Linux, but it is without doubt an open source platform that offers both practical and economic benefits to users and industry. So we have both competition, and good representation for open source, in personal computing.
Even though we have only played a small part in that shift, I think it’s important for us to recognize that the shift has taken place. So from Ubuntu’s perspective, this bug is now closed.
There is a social element to this bug report as well, of course. It served for many as a sort of declaration of intent. But it’s better for us to focus our intent on excellence in our own right, rather than our impact on someone else’s product. In the (many) years since this bug was filed, we’ve figured out how to be amazing on the cloud, and I hope soon also how to be amazing for developers on their desktops, and perhaps even for everyday users across that full range of devices. I would rather we find a rallying call that celebrates those insights, and leadership.
It’s worth noting that today, if you’re into cloud computing, the Microsoft IAAS team are both technically excellent and very focused on having ALL OS’s including Linux guests like Ubuntu run extremely well on Azure, making them a pleasure to work with. Perhaps the market shift has played a role in that. Circumstances have changed, institutions have adapted, so should we.
Along those lines, it’s good to reflect on how much has changed since 2004, and how fast it’s changed. For Ubuntu, our goal remains to deliver fantastic experiences: for developers, for people building out production infrastructure, and for end-users on a range of devices. We are doing all of that in an environment that changes completely every decade. So we have to be willing to make big changes ourselves – in our processes, our practices, our tools, and our relationships. Change this bug status is but a tiny example.
Ubuntu Podcast from the UK LoCo: S06E14 – The Social Ubuntu
We’re back with the fourteenth episode of Season Six of the Ubuntu Podcast from the UK LoCo Team! Alan Pope and Mark Johnson are still wandering the wilderness so Tony Whitmore and Laura Cowen are joined again by Laura Czajkowski and Andy Piper (and, of course, The Podcats) in Studio A with cake (chocolate tiffin!) and an interview.
Download OGG Download MP3 Play in PopupIn this week’s show:-
- We interview Sean Tilley about Diaspora, the decentralised open source social network.
- We share some Webby Lurve: Clippy
- We chat about upgrading to Ubuntu 13.04, upgrading to 13.10, going to OpenTech, working on CloudFoundry v2 launch, and working on the Ubuntu loco council.
- And, of course, we go over your marvellous feedback.
Please send your comments and suggestions to: podcast@ubuntu-uk.org
Join us on IRC in #ubuntu-uk-podcast on Freenode
Leave a voicemail via phone: +44 (0) 203 298 1600, sip: podcast@sip.ubuntu-uk.org and skype: ubuntuukpodcast
Follow our twitter feed http://twitter.com/uupc
Find our Facebook Fan Page
Follow us on Google Plus
Leave us some segment ideas on the Etherpad
Michael Vogt: Ansible and the facts from the “setup” module
I recently started using ansible to automate some server administration tasks.
Its very cool and easy to learn/extend. One nice feature is the “facts” gathering. It will collect information about the host(s) and stores them in its internal variables. This is useful for conditional execution of tasks (see below) but also as a ad-hoc way to gather information like DMI information or the running kernel.
To see all “facts” known to ansible about the hosts, run:
$ ansible all -m setupTo execute tasks conditionally you can do something like this:
- name: install vmware packages action: apt pkg=open-vm-tools only_if: "'$ansible_virtualization_type' == 'VMware'"Note that ansible 1.2+ has a different (and simpler) conditional called “when”.
Ansible is available in Ubuntu 12.04+ via:
$ sudo apt-get install ansibleIt is also available in Debian unstable and testing.
Sam Hewitt: New York-Style Cheesecake with Dark Chocolate Espresso Ganache Recipe
A good cheesecake is my favourite dessert –heavily unhealthy– but still my favourite, and usually is a staple of my birthday. So if you bake the following recipe, I’ll love you eternally.
New York-Style Cheesecake Recipe:Ingredients:
- 1 cup graham cracker crumbs
- 3 tablespoons sugar
- 3 tablespoons butter melted
- 4 cups cream cheese
- 1 cup sugar
- 3 tablespoons flour
- 4 eggs
- 1 cup sour cream
- 1 tablespoon vanilla
I tend to add a tablespoon of cocoa to the batter –when I intend to cover the cake in something chocolate– to make it ever slightly more chocolate-y.
Instructions:
- Combine the Graham cracker crumbs, 3 tablespoons of sugar and butter & press onto bottom of 9-inch springform pan.
- Bake at 325 degrees Fahrenheit for 10 minutes.
- Combine cream cheese, remaining sugar and flour, until well blended.
- Crack and add eggs, one at a time to the batter, mixing well after each addition.
- Blend in sour cream and vanilla; pour over crust.
- Bake at 450 degrees Fahrenheit for ten minutes.
- Reduce over temperature to 250 degrees and continue baking 1 to 1.5 hours or until the cake batter passes a skewer test*.
- Loose cake from rim of pan immediately after baking.
Chilling the cake in a fridge or freezer before applying a topping (like the following ganache) will make doing so much easier, but you must let the cake come to room temperate before chilling or your cake will crack.
*You can test the doneness of a cake (or other baked good) by piercing it with a skewer in it’s thickest part. If the skewer comes out clean your cake is done cooking.
Dark Chocolate Espresso Ganache Recipe:Ingredients:
- 6 ounces bittersweet chocolate, roughly chopped
- 1/2 cup unsalted butter, softened
- 1 cup white sugar
- 2 tablespoons espresso
- 2 tablespoons milk
- pinch of coarse sea salt
Directions:
- Beat the butter and sugar until light and fluffy,
- In a small pot, melt the chocolate in the espresso and milk. Stir in the salt.
- Add the butter-cream and whisk until smooth. Refrigerate.
- Warm the ganache slightly –so it can be spread easily– before applying to a cake.
Melting the chocolate using a double-boiler or microwave, is also acceptable.
The post New York-Style Cheesecake with Dark Chocolate Espresso Ganache Recipe appeared first on Sam Hewitt | Blog.
Sam Hewitt: Pork Stir-Fry Filled Spring Roll Recipe
Rice paper is something I usually have in stock, because: a. it keeps well and b. I love to make spring rolls. Now this recipe is for spring rolls filled with a stir-fried pork dish, but they can be literally stuffed with almost anything and cooked in numerous ways.
Fried and served with white rice.
Pork Stir-Fry Recipe
Ingredients
- 500g ground pork
- 1 teaspoon soy sauce
- 1/4 teaspoon hot chili flakes
- 1/4 teaspoon Sichuan pepper (if you have it)
- black pepper
- 1 cup shredded Savoy cabbage
- 1 carrot, cut into matchsticks
- 1/2 cup bean sprouts
- 1 small onion, halved & thinly sliced
- 1 scallion, thinly sliced
- 2 cloves garlic, minced
- ginger root, one piece ~3 cm, peeled & minced
- 1/4 cup chicken stock
- 2 tablespoons cornstarch
- 1 tablespoon soy sauce
- 2 tablespoons oyster sauce
- 1 tablespoon cilantro, chopped
- peanut oil, for frying
Directions:
- Combine the pork mince, black & sichuan pepper, chili flakes and soy in a bowl. Set aside, while you prep your vegetables.
- In a small bowl, dissolve the cornstarch in the chicken stock with the remaining soy. Set aside also.
- Preheat your wok over medium-high heat.
- Add 1 tablespoon oil, followed by the pork mixture and half of your minced garlic and ginger.
- Fry until the pork is just barely finished cooking, then remove.
- Add another tablespoon of oil.
- Flavour the oil by first frying the ginger, garlic and onion.
- Add, in order, carrot, cabbage & bean sprouts –stir frying for about 10 seconds between each.
- Return the pork to the wok.
- Add the chicken stock mixture (stirring it briefly to re-homogenize) and increase the heat and cook for about 3-5 minutes.
- Stir in the sliced scallion, cilantro and oyster sauce. Serve.
This stir fry can, of course, be a dish in itself, served with rice or what have you. Now onto assembly.
Spring Roll AssemblyThings you’ll need:
- lukewarm water
- rice paper
- space for rolling
- your filling
- a spoon
Soak rice paper in water, as per the manufacturers’ specification, usually it’s only a few seconds.
Place one or two spoonfuls of filling (depending on your spoon) in the lower third of your rice paper.
Fold the same third over your filling, tucking it gently underneath.
Fold the two sides of the rice paper over towards the centre, tucking it again.
…and roll.
Now these spring rolls can be eaten as is, or fried, steamed, treated as a dumpling and added to hot broth –whatever you desire. Enjoy :)
The post Pork Stir-Fry Filled Spring Roll Recipe appeared first on Sam Hewitt | Blog.
Aaron Toponce: OpenSSH Keys and The Drunken Bishop
Introduction
Have you ever wondered what the “randomart” or “visual fingerprint” is all about when creating OpenSSH keys or connecting to OpenSSH servers? Surely, you’ve seen them. When generating a key on OpenSSH version 5.1 or later, you will see something like this:
I’m sure you’ve noticed this, and probably thought, “What’s the point?” or “What’s the algorithm in generating the visual art?” Well, I’m going to answer those questions for you in this post.
This post is an explanation of the algorithm as explained by Dirk Loss, Tobias Limmer, and Alexander von Gernler in their PDF “The drunken bishop: An analysis of the OpenSSH fingerprint visualization algorithm”. You can find their PDF at http://www.dirk-loss.de/sshvis/drunken_bishop.pdf. In the event that link is no longer available, I’ve archived the PDF at http://aarontoponce.org/drunken_bishop.pdf.
Motivations
Bishop Peter finds himself in the middle of an ambient atrium. There are walls on all four sides and apparently there is no exit. The floor is paved with square tiles, strictly alternating between black and white. His head heavily aching—probably from too much wine he had before—he starts wandering around randomly. Well, to be exact, he only makes diagonal steps—just like a bishop on a chess board. When he hits a wall, he moves to the side, which takes him from the black tiles to the white tiles (or vice versa). And after each move, he places a coin on the floor, to remember that he has been there before. After 64 steps, just when no coins are left, Peter suddenly wakes up. What a strange dream!
When creating OpenSSH key pairs, or when connecting to an OpenSSH server, you are presented with the fingerprint of the keypair. It may look something like this:
$ ssh example.com The authenticity of host 'example.com (10.0.0.1)' can't be established. RSA key fingerprint is d4:d3:fd:ca:c4:d3:e9:94:97:cc:52:21:3b:e4:ba:e9. Are you sure you want to continue connecting (yes/no)?At this point, as a responsible citizen of the community, you call up the system administrator of the host “example.com”, and verify that the fingerprint you are being presented with is the same fingerprint he has on the server for the RSA key. If the fingerprints match, you type “yes”, and continue the connection. If the fingerprints do not match, you suspect a man-in-the-middle attack, and type “no”. If the server is a server under your control, then rather than calling up the system administrator for that domain, you physically go to the box, pull up a console, and print the server’s RSA fingerprint.
In either case, verifying a 32-character hexadecimal string is cumbersome. If we could have a better visual on the fingerprint, it might be easier to verify that we’ve connected to the right server. This is where the “randomart” comes from. Now, when connecting to the server, I can be presented with something like this:
The authenticity of host 'example.com (10.0.0.1)' can't be established. RSA key fingerprint is d4:d3:fd:ca:c4:d3:e9:94:97:cc:52:21:3b:e4:ba:e9. +--[ RSA 2048]----+ | o . | | . .o.o .| | . o .+.. | | . ...=o+| | S . .+B+| | oo+o.| | o o. | | . | | E | +-----------------+ Are you sure you want to continue connecting (yes/no)?Because I have a visual representation of the server’s fingerprint, it will be easier for me to verify that I am connecting to the correct server. Further, after connecting to the server many times, the visual fingerprint will become familiar. So, upon connection, when the visual fingerprint is displayed, I can think “yes, that is the same picture I always see, this must be my server”. If a man-in-the-middle attack is in progress, a different visual fingerprint will probably be displayed, at which point I can avoid connecting, because I have noticed that the picture changed.
The picture is created by applying an algorithm to the fingerprint, such that different fingerprints should display different pictures. Turns out, there can be some visual collisions that I’ll lightly address at the end of this post. However, this visual display should work in “most cases”, and cause you to start verifying fingerprints of OpenSSH keys.
The Board
Because the bishop finds himself in a room, with no exits, and only walls, we need to create a visually square room on the terminal. This is done by creating a room with 9 rows and 17 columns, creating a total of 153 total squares the bishop can travel. The bishop must start in the exact center of the room, thus the reason for odd-numbered rows and columns.
Our board setup then looks like this, where “S” is the starting location of the drunk bishop:
1111111 01234567890123456 +-----------------+x (column) 0| | 1| | 2| | 3| | 4| S | 5| | 6| | 7| | 8| | +-----------------+ y (row)Each square on the board can be thought as a numerical position from Cartesian coordinates. As mentioned, there are 153 squares on the board, so each square gets a numerical value through the equation “p = x + 17y”. So, p=0, for (0,0); p=76 for (8,4), the starting location of our bishop; and p=153 for (17,9), the lower right-hand corner of the board. Having a unique numerical value for each position on the board will allow us to do some simple math when the bishop begins his random walk.
The Movement
In order to define movement, we need to understand the fingerprint that is produced from an OpenSSH key. An OpenSSH fingerprint is an MD5 checksum. As such, it has a 16-byte output. An example fingerprint could be “d4:d3:fd:ca:c4:d3:e9:94:97:cc:52:21:3b:e4:ba:e9″.
Because the bishop can only move one of four valid ways, we can represent this in binary.
- “00″ means our bishop takes one move diagonally to the north-west.
- “01″ means our bishop takes one move diagonally to the north-east.
- “10″ means our bishop takes one move diagonally to the south-west.
- “11″ means our bishop takes one move diagonally to the south-east.
With the bishop in the center of the room, his first move will take him off square 76. After his first move, his new position will be as follows:
- “00″ will place him on square 58, a difference of -18.
- “01″ will place him on square 60, a difference of -16.
- “10″ will place him on square 92, a difference of +16.
- “11″ will place him on square 94, a difference of +18.
We must now convert our hexadecimal string to binary, so we can begin making movements based on our key. Our key:
d4:d3:fd:ca:c4:d3:e9:94:97:cc:52:21:3b:e4:ba:e9would be converted to
11010100:11010100:11111101:11001010:...snip...:00111011:11100100:10111010:11101001When reading the binary, we read each binary word (8-bits) from left-to-right, but we read each bit-pair in each word right-to-left (little endian). Thus our bishop’s first 16 moves would be:
00 01 01 11 00 01 01 11 01 11 11 11 10 10 00 11Or, you could think of it in terms of steps, if looking at the binary directly:
4,3,2,1:8,7,6,5:12,11,10,9:16,15,14,13:...snip...:52,51,50,49:56,55,54,53:60,59,58,57:64,63,62,61Board Coverage
All is well and good if our drunk bishop remains in the center of the room, but what happens when he slams into the wall, or walks himself into a corner? We need to take into account these situations, and how to handle them in our algorithm. First, let us define every square on the board:
Now, let us define every move for every square on the board:
Pos Bits Heading Adjusted Offset a 00 NW No Move 0 01 NE E +1 10 SW S +17 11 SE SE +18 b 00 NW W -1 01 NE No Move 0 10 SW SW +16 11 SE S +17 c 00 NW N -17 01 NE NE -16 10 SW No Move 0 11 SE E +1 d 00 NW NW -18 01 NE N -17 10 SW W -1 11 SE No Move 0 T 00 NW W -1 01 NE E +1 10 SW SW +16 11 SE SE +18 B 00 NW NW -18 01 NE NE -16 10 SW W -1 11 SE E +1 R 00 NW NW -18 01 NE N -17 10 SW SW +16 11 SE S +17 L 00 NW N -17 01 NE NE -16 10 SW S +17 11 SE SE +18 M 00 NW NW -18 01 NE NE -16 10 SW SW +16 11 SE SE +18
How much of the board will our bishop walk? Well, with our fingerprints having a 16-byte output, that means there are 64 total moves the bishop can walk. As such, the most board a bishop could cover, is if each square was only visited once. Thus 65/153 ~= 42.48%, which is less than half of the board.
Position Values
Remember that our bishop is making a random walk around the room, dropping coins on every square he’s visited. If he’s visited a square in the room more than once, we need a way to represent that in the art. As such, we will use a different ASCII character as the count increases.
Unfortunately, in my opinion, I think the OpenSSH developers picked the wrong characters. They mention in their PDF that the intention of the characters they picked, was to increase the density of the characters as the visitation count to a square increases. Personally, I don’t think these developers have spent much time working on ASCII art. Had I been on the development team, I would have picked a different set. However, here is the set they picked for each count:
Freq 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 Char . o + = * B O X @ % & # / ^ S EThe special characters “S” and “E” are to identify the starting and ending location of the bishop respectively.
Additional Thoughts
Now that you know how the random art is generated for a given key, you can begin to ask yourself some questions:
- When addressing picture collisions, how many fingerprints produce the same picture (same values for all positions)?
- How many fingerprints produce the same shape (same visited squares with different values)?
- How many different visualizations can the algorithm produce?
- Can a fingerprint be derived by looking only at the random art?
- How many different visualizations can a person easily distinguish?
- What happens to the visualizations when changing the board size, either smaller or larger?
- What visualizations can be produced with different chess pieces? How would the rules change?
- What visualizations can be produced if the board were a torus (like Pac-man)?
- Could this be extended to other fingerprints, such as OpenPGP keys? If so, could it simplify verifying keys at keysigning parties (and as a result, speed them up)?
Conclusion
Even though this post discussed the algorithm in generating the random art, it did not address the security models of those visualizations. There are many questions that need answers. Obviously, there are collisions. So, how many collisions are there? Can it be discovered to predict the number of visual collisions based on the cryptographic hash, and size of the board? Does this weaken security when verifying OpenSSH keys, and if so, how?
These questions, and many others, should be addressed. But, for the time being, it seems to be working “well enough”, and most people using OpenSSH probably only ever see the visualization when creating their own private and public key pair. You can enable it for every OpenSSH server you connect to, by setting “VisualHostKey yes” in your ssh_config(5).
In the meantime, I’ll be working on a Python implementation for this on OpenPGP keys. It will use a larger board (11×19), and a different set of characters for the output, but the algorithm will remain the same. I’m interested to see if this can improve verifying people have the right OpenPGP key, by just checking the ASCII art, rather than reading out a 20-byte random string using the NATO alphabet. Keep an eye on https://github.com/atoponce/scripts/blob/master/art.py.
Jonathan Thomas: Muon Suite 2.0.1 released
I am glad to announce the first bugfix release for Muon Suite 2.0. The Muon Suite is a set of package management utilities for Debian-based Linux distributions built on KDE technologies.
The 2.0.1 release fixes several hot stability issues in shared Muon components. Additionally, several UI glitches in Muon Discover were fixed.
Packages for Kubuntu 13.04 are from the QApt repository, and in the main repositories for the development version of Kubuntu 13.10. Packages are set to be available as a release update in Kubuntu proper soon.
Further technical information about the release, including source tarball downloads and a detailed changelog, can be found at the project pages here and here.
Manish Sinha: Zeitgeist Explorer release
When I am working on integrating zeitgeist with any other tool as a plugin, addon or writing a completely new application, a lot of times I felt the need to run a live monitor of all the events which are being inserted. Since zeitgeist uses dbus, so the obvious answer would be to use dbus-monitor, but this tool is a bit difficult to use in my opinion. When you are working on something which needs zeitgeist, last thing you need to do is to spend next few hours dealing with dbus-monitor.
I ended up writing a small GUI application which connects directly to zeitgeist daemon and receives a notification everytime an event is inserted. I released it 2 months before, but never got enough time to further work on it even announce it’s availability. The application is very easy and just lists down all the events. Select any event and it will give you all the information about it. Just to clarify, this is a developer tool.
Here is a screenshot.
Zeitgeist Explorer UI
The latest release is 0.1 and is available at Launchpad. Please file bugs in case you encounter any. If you a packager, please consider making it available for the distribution of your choice.
Paul Tagliamonte: Design: The next stage
One thing that’s always bugged me is this schism between graphic designers and hackers.
Seeing as how most graphic designers learn how to code — even if it’s just JavaScript / CoffeeScript, HTML5, CSS3 / LessCSS or ActionScript / Flash.
Almost no hackers learn how to design.
And that’s a problem.
As a result, I’ve started a real effort to learn the basics / fundamentals of design, in hopes that I can better communicate with my peers, create things that don’t look like a 1992 timewarp and be able to finish a project and feel proud of what it is, as it is, even without a designer’s help.
I can only hope that it goes well, and others do the same.
Marcin Juszkiewicz: My UK trip — Cambridge
Cambridge is nice city. I was there at least once every year since 2009: OEDEM 2009, Emdebian sprint in 2010, during Linaro Connect q3.11, ARMv8 sprint in 2012. But this time it was not work related visit.
SaturdayIt was evening when I reached Cambridge. Paweł took me from the train station and I had occasion to see their new house and how they plan to restructure it. We discussed some things, spoke a bit (mostly I) about ARMology (history of ARM cores) and day ended.
SundayLazy day spent on wandering around in the centre of Cambridge. I could go to Ely or Norwich instead but decided to just take a long walk and see places which I already saw before and find something new as well.
One of new places was Market Square Street Market where many local products could be bought and/or tried. Ostrich burgers, cakes, cookies, cheese, different things made from wood, metal or screws, jewellery made from misc materials like buttons. There were books, movies, music on CDs and vinyls, paintings, different kind of food to buy/taste… And many other things. I spent probably an hour there just walking and checking what do they have on offer.
But as it was yet another quite windy day I decided to buy some wind proof jacket. Visited few shops but did not find anything (finally bought one day later). My cold was already at advanced phase ;(
But it was well spent day. I saw many new places, reminded already visited ones but (mostly due to cold) did not took any pictures.
MondayI had an appointment with Andrew Wafaa so we met for lunch at the Oak Bistro. Discussed about misc things (like end of my job at Linaro) and at the end I gave him MicroSD adapter which does not stick out from Chromebook. He told me few hours later that it was a problem to get it back from people later during day ;)
After lunch I went to the Whipple Museum. Interesting exhibition. Models of human body, lot of scientific equipment from few centuries. Really worth visiting.
Day ended with visit at 40th Cambridge Beer Festival. I like how event was organized. “No glass, no service” means you can bring your own glass or pay 2.5GBP deposit for event one. There was wide choice of beers, ciders, perries (cider like make from pears), meads and wines. You could buy whole, half or third of pint (meads and wines were sold in 175ml portions) which made tasting easier.
TuesdayI reserved that day for beer festival only. Leif took day off so we could spend it together there. The only problem was when on Monday’s evening I realized that we forgot to share any usable contact information but we managed to find each other at one of social networking websites.
So beer… I bought several ones and tried even more from local friends. In the official application I marked (random order):
- Curious (bitter)
- Summer Virgin (golden ale)
- Nero (stout)
- “Ruby… don’t take your beer to town” (dark mild)
- Krasny Red (bitter, IPA style)
- Pegasus (bitter)
- Honeypot (speciality which I got rid to urinal after few sips)
- Golden Kiwi (golden ale)
- Bohemium Lager (lager)
- Zulu (porter)
But there were also other ones and “Dark Mead” for the end of day. With thanks of Leif and Steve I found out what is a source of that strange taste I call “English beer taste” which I am not a fan of. According to Steve it is due to hops.
It was great day due to beer and people I met: Andy, Neil, Steve, Leif, Maria and others.
WednesdayThe last day in Cambridge. Went to Fitzwilliam museum to take a look at the art. And I have to admit that I prefer art from 18-19th centuries rather than modern one.
Eat lunch, packed bags and then went to Stansted airport. Funny moment at security gate where officer asked me about amount of cellphones in my bag. There were just two of them: Nexus 4 and Chinese E6 one (plus Kindle and Nexus 7 tablet). Probably it was just routine control ;D
And after around 9 hours I finally arrived at home…
ConclusionIt was good trip, I enjoyed every day of it (even with cold), managed to visit most of the places I planned to, met friends and spent time in other way than usually.
Related content:
- Time to visit UK again?
- My UK trip — London
- 2012 timeline
- Dublin: Ubuntu sprint and more
- FOSDEM 2013
All rights reserved © Marcin Juszkiewicz
My UK trip — Cambridge was originally posted on Marcin Juszkiewicz website
Jorge Castro: Juju charm status for 29 May
- No updates this week, some fixes, nothing major.
- More work end of this week and next week.
- First cut merge is in lp:charm-helpers.
- Wedgewood has been doing a bunch of work organizing this.
- Generic frontend and python library access too.
- Mims: Can we bootstrap chef/puppet folks with charm helpers?
- Marco: we’re really low level right now, so not yet, but eventually.
- People want pre-install hooks.
- Mims, how about something like metadata in charm helpers for things like “Install these packages” and so on. -Also putting some thoughts around how any language can take advantage of of libraries in specific language. -One idea is to provide a defined cli on how charms can shell out.
- No packaging or PPA yet.
- Released first cut of juju-test-plugin, in the juju-plugins repo on Launchpad.
- Drop in replacement for jitsu-test.
- Find marco before you venture here (explosion sounds)
- Marco to announce testing harness this week/early next week for consumption. \o/
- newdocs almost ready for testing. This FRIDAY! \o/
- end user docs, we haven’t started on the “how to write a charm” stuff.
- Where will we host them?
- We need to do Redirects, we can’t bust our URLs; marco to investigate.
- Reconvene on Friday to make a call?
- old-docs now generating (thanks IS!) - just in time for newdocs to launch. :)
- We need pyju .7 and goju in 12.04 - Jorge driving this. Filed a bug
- https://bugs.launchpad.net/juju/+bug/1185496
- Mims/mgz to apply for PPU for Juju in distro.
- Marco - please don’t forget charm-tools, needs to be there too!
- analytics fixed on juju.u.c -CharmTesting: Create juju-test runner landed
- node.js - use more community common practices. Still nebulous at this point, Jeff is still learning the charm
- Mims showed some people at gluecon and got some ideas.
- We’ll walk through this at charmschool this Friday, how to do a node thing from scratch as part 2 of writing a charm.
- Gluecon rocked
- mapr and storm are cool, Mims wants to charm them, along with swaths of the netflix infrastructure as a proof of concept.
- Strata NY - submitted. London pending still.
- Texas Linux Fest this Friday/Saturday
- Charm School page updated with upcoming events.
- The discourse charm works! http://15.185.233.27/
Jonathan Riddell: Subject: Kubuntu love
I get the best e-mails
Subject: Kubuntu love
Date: Sat, 18 May 2013 12:26:56 +0100
Hello Jonathan
I really wasn't sure who to write to about this, but I got your name from the
Kubuntu site as a contact.
Anyway, all I wanted to say was to pass on my thanks to the Kubuntu team for
producing such a fantastic distro; it really is a pleasure to use. I'm back
with Linux after a long period of using Windows and OS X, and although it
wouldn't be Linux without the occasional gotcha, Kubuntu is so polished, well-
integrated, and, well, easy that it feels like coming home.
Anyway, if you think it's appropriate, please pass on my thanks to the Kubuntu
team for all their hard work and dedication in making what really is a class
act.
Best regards,
Richard P
Leo Iannacone: Simple workaround to keep PC alive playing songs in Amarok and Gnome
During last months, I must confess, I got a new music player: Amarok.
Now, I would not fall in flame, but Rhythmbox seems still incomplete (and a bit bugged) if compared to Amarok. And, sadly, this is a fact, not an opinion (lol, and this is flame).
Anyway.. Amarok is not able to keep your PC alive when plays something, so if you set a hibernate time in you gnome-settings you will see your PC going to sleep while you’re listening some song. And this is really bad..
This little script reads if Amarok is running (and it’s playing something as well) and set hibernate time to 0 (that means: no hibernate) in gnome-settings.
#!/bin/bash # you MUST set this accoring with your QT installation QDBUS=/usr/lib/x86_64-linux-gnu/qt4/bin/qdbus # change these as you wish # daemon time in seconds TIME_DAEMON=10 # time to hibernate in seconds TIME_HIBERNATE=600 # do not touch these KEY=/org/gnome/settings-daemon/plugins/power/sleep-inactive-ac-timeout QDBUS_CMD="org.mpris.MediaPlayer2.amarok /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.PlaybackStatus" function amarok_on() { dconf write $KEY 0 } function amarok_off() { dconf write $KEY $TIME_HIBERNATE } function check() { STATUS=`$QDBUS $QDBUS_CMD` if [ "$STATUS" == "Playing" ] ; then amarok_on else amarok_off fi } while `sleep $TIME_DAEMON` ; do check ; doneObviously, you have to run this script when a gnome session starts (Startup applications).
Mohamad Faizul Zulkifli: FreeDV: Digital Voice for HF
Introduction
FreeDV is a GUI application for Windows, Linux and MacOS (BSD and Android in development) that allows any SSB radio to be used for low bit rate digital voice.
Speech is compressed down to 1600 bit/s then modulated onto a 1.25 kHz wide 16QPSK signal which is sent to the Mic input of a SSB radio. On receive, the signal is received by the SSB radio, then demodulated and decoded by FreeDV. Communications should be readable down to 2 dB S/N, and long-distance contacts are reported using 1-2 watts power.
FreeDV was built by an international team of Radio Amateurs working together on coding, design, user interface and testing. FreeDV is open source software, released under the GNU Public License version 2.1. The FDMDV modem and Codec 2 Speech codec used in FreeDV are also open source.
Why FreeDV?
Amateur Radio is transitioning from analog to digital, much as it transitioned from AM to SSB in the 1950's and 1960's. How would you feel if one or two companies owned the patents for SSB, then forced you to use their technology, made it illegal to experiment with or even understand the technology, and insisted you stay locked to it for the next 100 years? That's exactly what was happening with digital voice. But now, hams are in control of their technology again!
FreeDV is unique as it uses 100% Open Source Software, including the audio codec. No secrets, nothing proprietary! FreeDV represents a path for 21st century Amateur Radio where Hams are free to experiment and innovate, rather than a future locked into a single manufacturers closed technology.
Demo Video
Here is what you need:
- A SSB receiver or transceiver
- FreeDV software, download links are below.
- A Windows or Linux PC with one (receive only) or two sound cards.
- Cables to connect your PC to your SSB radio.
Test your Transmitter Frequency Response
When you play this 10 second 1 kHz to 2 kHz sweep .wav file through your transmitter, the power level should remain constant. If not, look for filtering and processing to turn off.
Connecting Your Radio
If you are lucky enough to have a "9600" input and output on your radio, this is the best connection for every digital mode, even 1200 packet, and your audio box should be configured for 9600 or "no pre-emphasis/de-emphasis" if it has that setting. If the radio's configuration menu has a 1200/9600 setting, leave it permanently on 9600.
The "9600" and "1200" settings are misnamed. "9600" should really be called "direct connection", and "1200" should be called "pre-emphasis". The pre-emphasis that comes with the 1200 setting doesn't help any digital mode. The 9600 connection is the most direct and unprocessed path to the modulator and demodulator of your radio.
Those who don't have a special connection for digital modes can use the normal audio inputs and outputs of your radio. The same cables and hardware that you use for other digital modes that are based on PC programs will work with FreeDV, but you will need a second sound interface for the microphone and speaker connections to the FreeDV program. A USB headset of the sort used by gamers is all you need for the second sound interface.
Configuring Your Radio
Turn off as much processing as possible. In general noise blankers, DSP band limit filtering and narrow bandpass filters are more likely to hurt than help, while compression, DSP noise or carrier elimination, and voice processing are definitely wrong for Digital modes. FreeDV's HF modem does its own DSP, and in general this is true for other digital programs as well.
You can see the received effect of different settings in the S/N (signal to noise ratio) display of FreeDV. A higher S/N is better.
Drive your transmitter and amplifier so that it emits 10% to 20% of its rated power continuously. There is a 12 dB peak-to-average power ratio in our HF modem, and peak clipping in your amplifier will reduce the received S/N. Modern transmitters and amplifiers are only as linear, and only have as much headroom, as is necessary for voice SSB, thus we suggest you maintain amplifier headroom by operating well below your full power output. FreeDV is more efficient than SSB voice, and will achieve similar range to an SSB signal driven at higher levels, and better audio quality. We encourage you to ask manufacturers and reviewers to start rating transmitter and amplifier linearity and headroom for digital modes, not just SSB voice.
For more info, visit http://freedv.org/tiki-index.php