Planet Linux Australia

Syndicate content
Planet Linux Australia - http://planet.linux.org.au
Updated: 7 min 26 sec ago

Linux Users of Victoria (LUV) Announce: LUV Main February 2015 Meeting: R / linux.conf.au reports

Mon, 2015-02-02 12:29
Start: Feb 3 2015 19:00 End: Feb 3 2015 21:00 Start: Feb 3 2015 19:00 End: Feb 3 2015 21:00 Location: 

The Buzzard Lecture Theatre. Evan Burge Building, Trinity College, Melbourne University Main Campus, Parkville.

Link:  http://luv.asn.au/meetings/map

Speakers:

• Andrew Robinson, R: A Statistical Package on Linux

• Reports and video from linux.conf.au 2015

The Buzzard Lecture Theatre, Evan Burge Building, Trinity College Main Campus Parkville Melways Map: 2B C5

Notes: Trinity College's Main Campus is located off Royal Parade. The Evan Burge Building is located near the Tennis Courts. See our Map of Trinity College. Additional maps of Trinity and the surrounding area (including its relation to the city) can be found at http://www.trinity.unimelb.edu.au/about/location/map

Parking can be found along or near Royal Parade, Grattan Street, Swanston Street and College Crescent. Parking within Trinity College is unfortunately only available to staff.

For those coming via Public Transport, the number 19 tram (North Coburg - City) passes by the main entrance of Trinity College (Get off at Morrah St, Stop 12). This tram departs from the Elizabeth Street tram terminus (Flinders Street end) and goes past Melbourne Central Timetables can be found on-line at:

http://www.metlinkmelbourne.com.au/route/view/725

Before and/or after each meeting those who are interested are welcome to join other members for dinner. We are open to suggestions for a good place to eat near our venue. Maria's on Peel Street in North Melbourne is currently the most popular place to eat after meetings.

LUV would like to acknowledge Red Hat for their help in obtaining the Buzzard Lecture Theatre venue and VPAC for hosting.

Linux Users of Victoria Inc. is an incorporated association, registration number A0040056C.

February 3, 2015 - 19:00

read more

Jonathan Adamczewski: Standards vs Compilers: Warning C4146

Mon, 2015-02-02 10:27

warning C4146: unary minus operator applied to unsigned type, result still unsigned

I saw this warning recently.

“Aha!” I thought. “A common source of errors, able to strike down the unsuspecting programmer. Thank you crafters of Visual C++ compiler warnings, tirelessly laboring to uncover wrong assumptions and naively written code.”

“What?” I exclaimed. “Of course the result is still unsigned. That’s how the language is designed, and that’s what I wanted!”

Nevertheless, I read the documentation for the warning to see if there was anything I could glean from it — particularly to see if I could find sufficient reason to not just #pragma disable it.

This is what you can find in the documentation:

Unsigned types can hold only non-negative values, so unary minus (negation) does not usually make sense when applied to an unsigned type. Both the operand and the result are non-negative.

Negation of an unsigned value may not make sense if you don’t know what it means — it is well defined. Regardless, this is a level 2 warning. It is designed to catch common mistakes and misunderstandings and notify the programmer to have them look more closely. It may be an entirely reasonable thing to warn about.

The documentation continues with some rationale:

Practically, this occurs when the programmer is trying to express the minimum integer value, which is -2147483648. This value cannot be written as -2147483648 because the expression is processed in two stages:

  1. The number 2147483648 is evaluated. Because it is greater than the maximum integer value of 2147483647, the type of 2147483648 is not int, but unsigned int.
  2. Unary minus is applied to the value, with an unsigned result, which also happens to be 2147483648.

The first point is wrong. Wrong for a standards-conformant C++ implementation, anyway. The second would be accurate if the first was accurate (because 232 - 231 == 231)

Here’s what the most recent draft of the C++ standard says about the integer literal types:

The type of an integer literal is the first of the corresponding list in Table 6 in which its value can be represented.

2147483648 is a decimal constant with no suffix. When using VC++ with it’s 32 bit long int type, the first of the corresponding list in which its value can be represented is the 64 bit long long int. An unsigned type is never an option.

Unary minus should then be applied to long long int 2147483648, which should result in long long int -2147483648. There’s nothing unsigned in this process

Use of the result should behave in an unsurprising way, too — long long int -2147483648 can be assigned to a variable of type int and nothing unexpected will happen. The type can be converted without affecting the value.

According to the standard, the rationale is flawed, and the warning seems pointless to me.

In theory, there’s no difference between theory and practise

So I tried compiling the example program from the documentation to see what would happen.

// C4146.cpp // compile with: /W2 #include <stdio.h> void check(int i) { if (i > -2147483648) // C4146 printf_s("%d is greater than the most negative int\n", i); } int main() { check(-100); check(1); }

The documentation predicts the following outcome:

The expected second line, 1 is greater than the most negative int, is not printed because ((unsigned int)1) > 2147483648 is false.

If I build the program with gcc 4.9.2, both lines print.

If I build the program with Visual C++ 2012, or even 2015 Preview, only one line is printed (as was predicted).

So there is legitimacy to this warning — this is an area that Visual C++ is not compliant with the standard.

Maybe it’s because the standard has changed? I looked at the earliest version of the text available in the cplusplus github repo dating from late 2011, and that has the same rules as quoted above.

I went back further and found copies of the standard from 2003 and 1998, both of which state:

The type of an integer literal depends on its form, value, and suffix. If it is decimal and has no suffix, it has the first of these types in which its value can be represented: int, long int; if the value cannot be represented as a long int, the behavior is undefined.

So it’s a detail that was previously undefined, which means that the compiler is permitted to do whatever it wants. In this case, we’ll get a warning, but only if the programmer has asked for it using option /W2.

The documentation is accurate, and Visual C++ hasn’t kept up with changes in the standard. This shouldn’t be surprising.

Update: long long int was added to the standard as part of C++11. It appears that VC++ has had long long support since at least Visual Studio .NET 2003

So what?

This investigation arose from my reading of Visual C++ documentation in the context of what I knew of a recent draft of the C++ standard. It turns out that these two things are less connected than I had assumed. Unsurprisingly, the Visual C++ documentation describes Visual C++, not the standard.

While it would be nice if deviations from the standard were clearly marked in the documentation, and even nicer if the Visual C++ compiler was consistent with the ISO standard, the reality is that they are not and it is not.

One should always pay close attention to context, which happens to apply as much when reading about the C++ language as it does when writing C++ code.

Sridhar Dhanapalan: Twitter posts: 2015-01-26 to 2015-02-01

Mon, 2015-02-02 01:27

Colin Charles: MariaDB turns 5!

Mon, 2015-02-02 01:25

I stopped working on MySQL at Sun Microsystems in late 2009 (after a lengthy period of garden leave), to join Monty Program Ab, and was greatly anticipating a MariaDB release that we could take to market. The first GA release of MariaDB came out February 1 2010 – MariaDB 5.1.42. Today is MariaDB Server’s 5th birthday!

We didn’t even want to call it GA back then — we referred to it as a “stable” release. We didn’t make our own builds because we figured source code tarballs were good enough; so builds were made and hosted at OurDelta. It took some months (around August 2010) when we moved release notes to the Knowledgebase (which you’ll notice has moved from kb.askmonty.org to its current location) from the old front page wiki install that we had at askmonty.org.

I didn’t go to the first company meeting in Malaga due to having the chickenpox, so my first meeting was the one we did in Reykjavik, Iceland. We did it towards the end of February 2010, and planned it literally in a month – maybe a celebration that we brought 5.1 to market on time, and also to plan 5.2.

Speaking of companies, we were Monty Program Ab (professionally this quickly became MariaDB Services Ab), then SkySQL Ab (via merger), and finally MariaDB Corporation Ab (via re-branding). Shortly before the SkySQL Ab merger, we even have the MariaDB Foundation appear.

Anyway, what have we released? MariaDB 5.1, MariaDB 5.2, MariaDB 5.3, MariaDB 5.5, MariaDB 10.0, MariaDB Galera Cluster 5.5 & 10.0, a special MariaDB 5.5 with TokuDB build and a special MariaDB with FusionIO improvements build. To boot, we also have three client libraries (connectors, if you must): C, Java, and ODBC.

So 5 major server releases (7 if you count the Galera series), and we’re now working on MariaDB 10.1. I count 88 releases of the server across various versions (with breakdowns: 9 alphas, 11 betas, 7 release candidates and 61 GAs). We’ve had 23 Galera releases and 15 releases for the various client libraries.

We are shipping in all major Linux and BSD distributions. In many, we are even the default

This birthday is a nice time to look back at our achievements, but also to remind ourselves to not rest on our laurels and continue to focus on growth. The last sanctioned press release talks of over 2 million users globally. 

Thank you to all our users. Thank you to all the contributors and developers. Here’s to a lot more adoption, growth, releases and technology improvements!

Related posts:

  1. MariaDB 10 – XtraDB & InnoDB versions
  2. MariaDB 5.1.44 released
  3. MariaDB 10.0.5 storage engines – check the Linux packages

Binh Nguyen: Scripting, Electronic, and Musical Experimentation

Sun, 2015-02-01 18:47
A script that I created to save space. It works by using dd to reduce all relevant files to zero size. It contains comments to make it customisable and creates log files just in case something goes wrong.



https://sites.google.com/site/dtbnguyen/mkempty-1.01.zip



Came across one of these during the week. I looked at it, did a bit more research though and found out that the battery was dying, that the company was in trouble, and that no spare parts were being manufactured which meant that you would have to retrofit your own battery from another source if it came down to it (I found out that a HTC ChaCha battery actually fits the physical dimensions required and actually has the characteristics to get the job done. Since, I don't like risking the possiblity of overheating I decided to pass on the purchase. I obviously thought about the chance of fitting an iPod battery in there as well which explains the links... Not enough information available online though regarding physical dimensions.

 http://en.wikipedia.org/wiki/The_Pacemaker

http://pacemaker.net/

http://pacemakerdevice.org/

http://www.cnet.com/au/products/tonium-pacemaker/

https://forum.sparkfun.com/viewtopic.php?f=14&t=28139

http://apple.stackexchange.com/questions/37552/anyone-knows-how-many-mah-in-ipod-touch-4th-generation-battery

https://www.ifixit.com/Store/iPhone/iPhone-Gen-1-Replacement-Battery/IF105-017-1

http://www.engadget.com/2011/12/28/irl-pioneer-kuro-pdp-6010fd-tonium-pacemaker-and-the-samsung-g/

http://www.wired.com/2008/04/pacemaker_portable_dj/



If you've ever wanted a more memorable username to link to your Facebook profile here's some help.

https://www.facebook.com/note.php?note_id=457770375843

https://www.facebook.com/help/329992603752372/



Was working an automatically deployed Amazon Web Services (AWS)/Unified Threat Management (UTM) device/node while I was working on the 'Cloud and Internet Security' report. Don't like leaving things unfinished. Relaunching the project until it's conclusion. It'll be interesting to see whether there is an actual market for these type of things whether for or not for profit. One curious thing is that a lot of information is actually more easily obtained via SNMP and other existing monitoring protocols...

http://forums.whirlpool.net.au/archive/1671024

https://play.google.com/store/books/author?id=Binh+Nguyen

http://www.amazon.com/mn/search/?_encoding=UTF8&camp=1789&creative=390957&field-author=Binh%20Nguyen&linkCode=ur2&search-alias=digital-text&sort=relevancerank&tag=bnsb-20&linkId=3BWQJUK2RCDNUGFY



The following is just a good reference guide...

drum and bass averages a BPM of 160-180

dubstep is around 140 BPM

House varies between 118 and 135 BPM

hip-hop is around 115 BPM

Concert marches are typically ~120 BPM.

Screamers are usually 130-150 BPM

Largo is 40-60 BPM

Larghetto is 60-66 BPM

Adagio is 66-76 BPM

Andante is 76-108 BPM

Moderato is 108-120 BPM

Allegro is 120-168 BPM

Presto is 168-200 BPM

Prestissimo is 200+ BPM (These last according to my Sabine Zipbeat.)

http://music.stackexchange.com/questions/4525/list-of-average-genre-tempo-bpm-levels



Have been doing more research on understanding the concept of 'layering' in song composition. The consensus seems to be that in electronic music (anything that features heavily synthesised sounds), you basically start from percussion/a drumline and then you work your way upwards, adding synths, basses, and so on (you can start the other way around to but if you have sufficient knowledge of percussion but it doesn't quite have that some feeling/sensation to it). You may even start with a pattern of single notes to create a melody and then base your lyrics around that based on what I've read. For this particular reason, I've been looking more into percussion and patterns that are peculiar to each particular (keywords "percussion music pdf" in Google). Some really interesing stuff. I didn't realise that notation in percussion could be 'customised' because there were so many different instruments that were possibly available?



http://web.mit.edu/merolish/Public/drums.pdf (you'll need this to understand the notation)

http://www.virtualdrumming.com/drums/drum-sheet-music.html (none of this will make any sense without an understanding of notation)

http://www.hvogt.de/drums/patterns.html

http://drumbum.com/lessons/drum-lessons/free-drum-lessons/beginning-drums.html

https://www.ucmo.edu/music/bands/media/drumline_audio_parts/UCM%2520DL%2520Handbook%25202012.pdf

http://www.berkleeshares.com/drums__percussion



I took a big look at Dubstep because percussion is a core part of that stype of music.

http://en.wikipedia.org/wiki/Dubstep

http://www.soundonsound.com/sos/jul10/articles/dubstep.htm

http://www.musicradar.com/tuition/tech/14-dubstep-production-tips-178489/

http://www.makebeatsforever.com/top-10-tips-for-making-dubstep/

http://www.makebeatsforever.com/the-ultimate-guide-on-how-to-make-dubstep/

http://howtomakeelectronicmusic.com/how-to-make-a-dubstep-beat

http://www.wikihow.com/Write-Dubstep-Music

http://www.looperman.com/forum/thread/56378

http://ezinearticles.com/?expert=Simmon_Power



------> Huge Guide to Producing Dubstep! <------ br="">https://www.dubstepforum.com/forum/viewtopic.php?t=159713

Dubstep Music Mastering tutorials/tips

https://www.dubstepforum.com/forum/viewtopic.php?t=104330



Obviously, once you have a percussion part that is suitable to he genre of music you can begin to layer up. For instance, think about common elements/instruments/sounds. Layer based on genre, thinking about what you have, what you can adjust, what you can find, what you can create or imagine whether it is via software or hardware... One thing you should know, writing songs isn't really an incremental process. It's like some other things I've experienced in life. Once you hit a plateau and begin to understand the next step, you gain a whole bunch of extra bits and pieces. While you were previously only able to write half a song, now you can write three-quarters of it, or you suddently discover a way to take your sound quality to a completely new level.

http://en.wikipedia.org/wiki/House_music

http://en.wikipedia.org/wiki/Hip_hop_music

http://en.wikipedia.org/wiki/Rhythm_and_blues

http://en.wikipedia.org/wiki/B-boying

http://en.wikipedia.org/wiki/Intelligent_dance_music

http://en.wikipedia.org/wiki/Break_(music)



You listen to enough music (out on the Internet, at concerts/bars/out on the streets, purchasing from retail, etc...) and you basically get the impression that a lot of what is released out there isn't actually all that great (the supposed idea behind the Apple Music Store) which is a good thing and a bad thing. Think in terms of marketing. You name a genre, there is likely a website that is dedicated to that particular style of music. Here's the problem though. Remember the premise of the Apple Music Store. Out of every album you purchase you're only going to like anywhere between one and a maximum of four songs on it (average based on my collection and personal experience). Factor in the fact that the barrier to entry for online music is much lower and you basically have very little chance of making it unless you can churn out consistently good music or else you create the 'song of your life' at some point along the line because that is basically what it will take to rise above the rabble.



The irony is this. By reading, taking courses, and so on... you end up with a baseline knowledge of how to compose but it also means that you may end up with some very formulaic songs. Watch for DJ's, producers, composers, engineers, etc... Just like a person's character there tend to be idiosyncracies in the sound that they produce (whether that may be down to preference, talent, equipment, etc...).



Some websites where you can preview some artists work (not including the usual places such as the Apple Store, etc...)

https://topdeejays.com/

http://www.traxsource.com/top/tracks

http://mixcloud.com/

http://soundcloud.com/

https://www.youtube.com/

https://bandcamp.com/

http://www.beatport.com/

http://www.last.fm/

http://promodj.com/



Nnote that what is House, Chilled, or Lounge over here doesn't necessarily mean the same thing in Asia, Europe, America, etc...

http://promodj.com/top100/djs  http://promodj.com/top100/djs/Russia/chillout/



Some interesting artists/groups/shows I've come across recently...

http://www.djmumbles.com/podcasts.php?screen=0

http://www.youtube.com/user/jaumxito

http://soundcloud.com/fakefunk/

http://soundcloud.com/groups/london-deep-soulful-house-movement/

http://www.beatwinus.fr/

https://soundcloud.com/groups/beat-win-us-radio

http://www.nrj.fr/

http://soundcloud.com/groups/radio-energy-nrj/tracks

http://soundcloud.com/john_soulpark

https://soundcloud.com/jmgrana

Binh Nguyen: Memorable Quotes - Part 9

Sun, 2015-02-01 17:47
A follow on from:

http://dtbnguyen.blogspot.com.au/2014/12/memorable-quotes-part-8.html

- " The pursuit of normality is the ultimate sacrifice of potential. " -- Faith Jegede

http://www.autismspectrum.org.au/content/services-location- "Pride is stupid, but it is necessary"

Jacques Villeneuve is proud to be able to run flat-out through Eau Rouge, 2005http://www.f1technical.net/- "The bottom line is that we need a global financial system that supports stability and growth," she said.

"In too many cases -- from the United States in 2008 to Cyprus today -- we have seen what happens when a banking sector chooses the quick buck over the lasting benefit, backing a business model that ultimately destabilizes the economy."

http://au.news.yahoo.com/latest/a/-/article/16673224/lagarde-says-some-eurozone-banks-may-need-to-close/

- There can be slain

No sacrifice to God more acceptable

Than an unjust and wicked King

-- Seneca, "Hercules Furens"

http://opinionator.blogs.nytimes.com/2013/05/11/in-syria-and-beyond-the-tyrant-as-target/- "What we saw from that is if you're talking about everything all the time, it's harder for the public to distinguish the things that are most important," he said.

http://www.nytimes.com/2013/07/16/us/politics/in-second-term-obama-is-seen-as-using-hidden-hand-approach.html?hp- There's a Chinese saying, "with a new king comes new followers".

http://www.smh.com.au/opinion/politics/i-spy-an-odd-appointment-20120704-21hdu.html- As Karl Marx was one of the earliest to point out, economics (though so much less interesting) is far more important than politics.



Marx considered all political events as epiphenomena. He viewed great men as blind instruments of irresistible forces which they themselves could hardly comprehend.



The Marxist vision of society has been disproved many times, always at epic human cost. However, his doctrine that productive forces propel history has stood the test of time - and is invaluable for an understanding of the current predicament of the European Union.

http://www.telegraph.co.uk/news/worldnews/europe/eu/11286161/The-euro-is-heading-for-disaster-what-luck-for-David-Cameron.html

- "I use Sylenth, one compressor, Ableton Live and its basic effects. I like to keep it super simple. It's actually pretty boring but it works for me and it keeps me making music."

https://illmethodology.com/2014/06/flume-dont-need-gear-via-musicradar/- H.P. Lovecraft

"The oldest and strongest emotion of mankind is fear, and the oldest and strongest kind of fear is fear of the unknown"

- H.P. Lovecraft, Supernatural Horror in Literature

...

"Do we really want to be rid of our resentments, our anger, our fear? Many of us cling to our fears, doubts, self-loathing or hatred because there is a certain distorted security in familiar pain. It seems safer to embrace what we know than to let go of it for fear of the unknown.

(Narcotics Anonymous Book/page 33)"

- Narcotics Anonymous

...

"Sometimes painfully lost people can teach us lessons that we didn't think we needed to know, or be reminded of---the more history changes, the more it stays the same."

- Shannon L. Alder

http://www.goodreads.com/quotes/tag/fear-of-unknown

- C. JoyBell C.

"You will find that it is necessary to let things go; simply for the reason that they are heavy. So let them go, let go of them. I tie no weights to my ankles."

- C. JoyBell C.



C. JoyBell C.

"People have to forgive. We don't have to like them, we don't have to be friends with them, we don't have to send them hearts in text messages, but we have to forgive them, to overlook, to forget. Because if we don't we are tying rocks to our feet, too much for our wings to carry!"

- C. JoyBell C.



Marvin J. Ashton

"Be the one who nurtures and builds. Be the one who has an understanding and a forgiving heart one who looks for the best in people. Leave people better than you found them."

- Marvin J. Ashton http://www.goodreads.com/quotes/tag/forgiving

- In the realm of law, the RSS wants the passage of a stringent nationwide bill that would ban religious conversions. In the public sphere, it has arrogated the right to pronounce not just on the future of minorities in India but that of India's Hindu majority as well. In the war of the religions, it seeks to spread the news that there is now a Hindu fundamentalism eager to goad and trump well-established Christian and Islamic fundamentals in India and around the world. And among its own vast cadre, it has generated the sense that it, much more than the government of the day or the diverse institutions of civil society and business, holds the key to India's future.

...

As a Hindu, I have some sympathy with this viewpoint. Missionary activity has always seemed to me unacceptably crude and arrogant, not only in its conviction that there is a single truth that must be propagated, but also in its contempt for two of the forces that most strongly influence religious belief: The accident of birth in a certain religion, which is then followed by many years of socialisation into its worldview.http://gulfnews.com/opinions/columnists/a-new-vision-of-india-that-is-100-hindu-1.1433102

- "It is not conversion, it is reconversion," said the professorial Abdeo, national secretary of Vishva Hindu Parishad, a pro-Hindu organisation. "A thousand years ago, all the Muslims and Christians in India were Hindu. They were converted by the sword. We are just bringing them back to their original faith."



Hindu fundamentalists, saying Christian missionaries and Muslim conquerors converted Indians by force centuries ago, have for years quietly sought to win them back. This year, seemingly invigorated by the rise of a right-wing Hindu government in New Delhi, they have organised mass reconversion "camps", including some where people have alleged they were duped or threatened into changing faiths.

http://www.smh.com.au/world/hindu-activists-organise-mass-reconversion-camps-in-india-20141229-12et35.html

- "When we start to doubt ourselves, when we start questioning our own identity, when we start distrusting everything, we cannot win, including against extremists, those who want to destroy who we are, threaten our values, turn France into something it is not".

http://www.france24.com/en/20150105-france-fran%C3%A7ois-hollande-media-offensive-tv-radio-2015-sarkozy/ - Khomeini himself put it this way: "Allah did not create man so that he could have fun. The aim of creation was for mankind to be put to the test through hardship and prayer. An Islamic regime must be serious in every field. There are no jokes in Islam. There is no humor in Islam. There is no fun in Islam. There can be no fun and joy in whatever is serious."

...

A solemn and dignified Ramadan indeed. Sometimes it takes a clown to speak the truths that others won't face.

http://www.smh.com.au/national/islam-is-no-laughing-matter-20150109-12kzr3.html

- Yun's quest - a modern version of the age old dream of tapping the fountain of youth - is emblematic of the current enthusiasm to disrupt death sweeping Silicon Valley. Billionaires and companies are bullish about what they can achieve. In September 2013 Google announced the creation of Calico, short for the California Life Company. Its mission is to reverse engineer the biology that controls lifespan and "devise interventions that enable people to lead longer and healthier lives". Though much mystery surrounds the new biotech company, it seems to be looking in part to develop age-defying drugs. In April 2014 it recruited Cynthia Kenyon, a scientist acclaimed for work that included genetically engineering roundworms to live up to six times longer than normal, and who has spoken of dreaming of applying her discoveries to people. "Calico has the money to do almost anything it wants," says Tom Johnson, an earlier pioneer of the field now at the University of Colorado who was the first to find a genetic effect on longevity in a worm.

http://geneticliteracyproject.org/2015/01/12/can-silicon-valley-fix-the-aging-problem/

- But let's remember that central bank quantitative easing (QE) of the kind that Europe is now embarking on is always just a Band-Aid on economic troubles, not a solution to underlying structural issues in a country (or in this case, a region). Just as the Fed's $4 trillion QE money dump bolstered the markets but didn't fix the core problems in our economy--growing inequality, a high/low job market without enough work in the middle, flat wages, historically low workforce participation--so the ECB QE will excite markets for a while, but it won't mend the problems that led Europe to need this program to begin with.

http://time.com/3679154/european-union-quantitative-easing/

- Europe's future was "not the future of austerity - it is the future of democracy, solidarity and cooperation," he added.

http://www.theguardian.com/world/2015/jan/25/greece-election-vote-austerity-leftwing-syriza-eu?google_editors_picks=true

- "Medicine doesn't happen very much in breakthroughs. It happens in lots and lots of little steps, and we still have a long way to go."

http://www.smh.com.au/national/dr-jeremy-chapman-receives-australia-day-honour-20150125-12uze3.html

- "It is wrong to imagine that we can only gain and grow from revelling in past glory," he said. "True patriots don't shrink from historical truth -- they welcome it, they learn from it.

"I believe Australians are smart enough and generous enough to know that our national story is not a 'choose-your-own adventure', where we pick and mix the chapters that portray us in the best light.

...

"No leader can 'settle' the question of Australia's global role and responsibilities, and no leader should take pride in trying."

http://www.theaustralian.com.au/national-affairs/bill-shorten-lets-revive-republic-debate/story-fn59niix-1227196364113?nk=f2f9c38ea04dc0479d039b85079e3103- "The problem is he just wants to pour that additional money into the broken, existing system -- which a lot of people graduate with AA degrees that don't lead to anything but another four-year degree that may not lead to a job," Sen. Marco Rubio, R-Florida -- a prospective 2016 presidential candidate -- suggested recently on CBS' Face the Nation. "What we need to do is create competition with alternative methods where people can acquire certification programs that take less than two years, and get you to work right away as a welder, electrician, and airplane mechanic. I wish he would spend more time on that, and less time trying to raise taxes and pour money into an outdated model that no longer works in the 21st Century."

http://www.cbsnews.com/news/state-of-the-union-finally-an-agenda-for-the-21st-century/

- The test was anything but scientific - it says as much about my proficiency with the different input methods as it does about the input methods themselves - but the results were interesting and not at all what I expected. Swype, the keyboard you use by drawing lines over the letters without lifting your finger, was by far the slowest for me, due to the fact it coped very poorly indeed with longer, not-so-common words in the text. Next slowest was the handwriting recognition on Samsung's Galaxy Note 4, using its stylus, due to the fact it kept capitalising words that shouldn't be capitalised. I really thought it would be one of the faster ones. Then came the stock Android keyboard, then second fastest was the keyboard on the iPhone, thanks to its uncanny auto-correction ability that lets you type at an insane pace and still have near perfect accuracy.



But fastest of all by some margin, twice as fast as Swype and 30 per cent faster than the iPhone, was the keyboard on the Classic. Not only that, but it was the only input device that allowed me to take my eyes off the keyboard and look at the stopwatch while entering text. It's so easy to use, and so fast.

http://www.afr.com/f/free/technology/digitallife/blackberry_classic_is_faster_than_7uzwvj1NNSc2gwMgq042pM

- In this day and age confidence is king. You can embark on all of the education you like but if you can't back yourself, or make it clear to others that you're up for the fight then others will pass you by. Nick Kyrgios is definitely letting everyone know he's not holding back, and he's having one hell of a crack.

...

Some are saying Nick is one of the most exciting sporting prospects Australia has seen in a long while, so lets not cook the golden goose, instead let it run wild, and who knows what will eventuate.

http://www.theroar.com.au/2015/01/27/let-nick-kyrgios-run-wild/

- Canada's number one problem in personal finance is not lack of saving, he said, but people spending beyond their means. "Eric and Ilsa show us that it's a problem uniting people of all backgrounds. This couple is you and me, only with a higher income."

http://www.news.com.au/finance/money/barely-getting-by-on-25k-a-month-couples-plea-for-financial-advice-draws-scorn/story-e6frfmcr-1227194539834

http://www.theglobeandmail.com/globe-investor/personal-finance/mortgages/debt-doubts-cast-a-shadow-for-this-professional-couple-with-five-kids/article22496585/

- The most successful companies need a vision, and both Apple and Microsoft have one. But Apple's was more radical and, as it turns out, more farsighted. Microsoft foresaw a computer on every person's desk, a radical idea when IBM mainframes took up entire rooms. But Apple went a big step further: Its vision was a computer in every pocket. That computer also just happened to be a phone, the most ubiquitous consumer device in the world. Apple ended up disrupting two huge markets.

...

Mr. Cihra noted that Microsoft already dominates its core businesses, leaving little room for growth. But, he said, "Apple still doesn't have massive market share in any of its core markets. Even in smartphones, its share is only in the midteens. Apple's strategy has been to carve out a small share of a massive market. It's pretty much a unique model that leaves plenty of room for growth."

http://www.afr.com/p/technology/how_apple_left_microsoft_for_dust_8DjgBmV0XlDq44KQX5JpQI

- The new administration said the sackings of the heads of the Hellenic Republic Asset Development Fund will put an end to "close-out sale" privatisation policies, Greek media reported. From now on, privatisations will take place when they create new jobs and generate economic growth, the government said.



Privatisations of state companies are an important part of a reform program the previous government agreed to with its international creditors in return for a EUR240 billion ($350 billion) bailout. Interest from investors for the state offerings, however, has been low, and the revenues from the sales have come in sharply below expectations.

...

"The wind of change is starting to blow in Europe," party leader Pablo Iglesias, a 36-year-old former university professor, said in Greek and Spanish as he addressed supporters. "We dream but we take our dream seriously. More has been done in Greece in six days than many governments did in years."

...

Born out of the "Indignants" protest movement that filled Spanish squares in 2011 with demands for change, Podemos says it wants to prevent profitable companies firing workers, promote fully state-controlled healthcare and enact a "significant" minimum-wage hike.

http://www.smh.com.au/world/greece-puts-privatisations-on-ice-as-antiausterity-wave-arrives-in-madrid-20150201-1332aw.html

http://www.france24.com/en/20150131-tens-thousands-rally-support-spain-anti-austerity-party-podemos/

- The team carried out the research using astero-seismology -- listening to the natural resonances of the host star which are caused by sound trapped within it. These oscillations lead to miniscule changes or pulses in its brightness which allow the researchers to measure its diameter, mass and age. The planets were then detected from the dimming that occurs when the planets transited, or passed across, the stellar disc. This fractional fading in the intensity of the light received from the star enables scientists to accurately measure the size of the planets relative to the size of the star.

http://timesofindia.indiatimes.com/home/science/Solar-system-with-5-Earth-sized-planets-dicovered/articleshow/46034238.cms

- In DJ parlance, a break is where all elements of a song (e.g., pads, basslines, vocals), except for percussion, disappear for a time. This is distinguished from a breakdown, a section where the composition is deliberately deconstructed to minimal elements (usually the percussion or rhythm section with the vocal re-introduced over the minimal backing), all other parts having been gradually or suddenly cut out.[1] The distinction between breaks and breakdowns may be described as, "Breaks are for the drummer; breakdowns are for hands in the air".[1]



In hip hop and electronica, a short break is also known as a "cut", and the reintroduction of the full bass line and drums is known as a "drop", which is sometimes accented by cutting off everything, even the percussion.

http://en.wikipedia.org/wiki/Break_(music)

- Mobile users are increasingly driving traffic to Facebook, and advertisers have responded by purchasing large numbers of mobile ads. More than $1 in every $5 spent on Facebook advertising now goes to mobile, even though mobile ads command a premium cost-per-click rate of $1.38 -- compared to $0.81 for desktop ads. Also of note: The majority of tablet users access Facebook using an Apple product, but when it comes to phones, the Android operating system drives more traffic. -- AllFacebook

http://www.entrepreneur.com/blog/225499- Robotics executives say even though blue-collar jobs will be lost, more efficient manufacturing will create skilled jobs in designing, operating and servicing assembly lines.

A report commissioned by the International Federation of Robotics last year found that 150,000 people are already employed by robotics manufacturers worldwide in engineering and assembly jobs.

http://www.theage.com.au/world/robots-take-on-skilled-labour-20120819-24gdr.html

Francois Marier: Upgrading Lenovo ThinkPad BIOS under Linux

Sun, 2015-02-01 14:31

The Lenovo support site offers downloadable BIOS updates that can be run either from Windows or from a bootable CD.

Here's how to convert the bootable CD ISO images under Linux in order to update the BIOS from a USB stick.

Checking the BIOS version

Before upgrading your BIOS, you may want to look up which version of the BIOS you are currently running. To do this, install the dmidecode package:

apt-get install dmidecode

then run:

dmidecode

or alternatively, look at the following file:

cat /sys/devices/virtual/dmi/id/bios_version Updating the BIOS using a USB stick

To update without using a bootable CD, install the genisoimage package:

apt-get install genisoimage

then use geteltorito to convert the ISO you got from Lenovo:

geteltorito -o bios.img gluj19us.iso

Insert a USB stick you're willing to erase entirely and then copy the image onto it (replacing sdX with the correct device name, not partition name, for the USB stick):

dd if=bios.img of=/dev/sdX

then restart and boot from the USB stick by pressing Enter, then F12 when you see the Lenovo logo.

Michael Still: Cooleman and Arawang Trigs

Sun, 2015-02-01 11:28
Doug and I went out to walk Doug's dog at short notice yesterday evening, and managed to sneak in two trigs while we were at it. A nice walk, although it took longer than I expected it to, with our average speed only being about 3.5 kilometers an hour. I wonder how much of that was the two peaks to climb, versus the puppy in tow.



Along the way we found this super cool telegraph line, which appears to still have an active Telstra service on it. I wonder if we'll one day see fiber strung on these telegraph poles?



                       



Interactive map for this route.



Tags for this post: blog pictures 20150131-cooleman_and_arawang photo canberra western_creek bushwalk trig_point urban_trig

Related posts: Harcourt and Rogers Trigs; A quick walk to Tuggeranong Trig; Big Monks; A walk around Mount Stranger; Forster trig; Two trigs and a first attempt at finding Westlake



Comment

Jonathan Adamczewski: What is -1u?

Sun, 2015-02-01 09:27

In C++, what exactly is -1u?

It doesn’t seem like it should be difficult to answer — it’s only three characters: -, 1, and u. And, knowing a little bit about C++, it seems like that’ll be (-1) negative one with that u making ((-1)u) an unsigned int. Right?

To be more specific, on an architecture where int is a 32 bit type, and negative numbers are represented using two’s complement (i.e. just about all of them), negative one has the binary value 11111111111111111111111111111111. And converting that to unsigned int should … still be those same thirty two ones. Shouldn’t it?

I can test that hypothesis! Here’s a program that will answer the question once and for all:

#include <stdio.h> #include <type_traits> int main() { static_assert(std::is_unsigned<decltype(-1u)>::value, "actually not unsigned"); printf("-1u is %zu bytes, with the value %#08x\n ", sizeof -1u, -1u); }

Compile and run it like this:

g++ -std=c++11 minus_one_u.cpp -o minus_one_u && minus_one_u

If I do that, I see the following output:

-1u is 4 bytes, with the value 0xffffffff

I’m using -std=c++11 to be able to use std::is_unsigned, decltype and static_assert which combine to assure me that (-1u) is actually unsigned as the program wouldn’t have compiled if that wasn’t the case. And the output shows the result I had hoped for: it’s a four byte value, containing 0xffffffff (which is the same as that string of thirty two ones I was looking for).

I have now proven that -1u means “convert -1 to an unsigned int.” Yay me!

Not so much.

It just so happened that I was reading about integer literals in a recent draft of the ISO C++ standard. Here’s the part of the standard that describes the format of decimal integer literals:

2.14.2 Integer literals

1 An integer literal is a sequence of digits that has no period or exponent part, with optional separating single quotes that are ignored when determining its value. An integer literal may have a prefix that specifies its base and a suffix that specifies its type. The lexically first digit of the sequence of digits is the most significant. A decimal integer literal (base ten) begins with a digit other than 0 and consists of a sequence of decimal digits.

Can you see where it describes negative integer literals?

I can’t see where it describes negative integer literals.

Oh.

I though -1u was ((-1)u). I was wrong. Integer literals do not work that way.

Obviously -1u didn’t just stop producing an unsigned int with the value 0xffffffff (the program proved it!!1), but the reason it has that value is not the reason I thought.

So, what is -1u?

The standard says that 1u is an integer literal. So now I need to work out exactly what that - is doing. What does it mean to negate 1u? Back to the standard I go.

5.3.1 Unary operators

8 The operand of the unary – operator shall have arithmetic or unscoped enumeration type and the result is the negation of its operand. Integral promotion is performed on integral or enumeration operands. The negative of an unsigned quantity is computed by subtracting its value from 2n, where n is the number of bits in the promoted operand. The type of the result is the type of the promoted operand.

I feel like I’m getting closer to some real answers.

So there’s a numerical operation to apply to this thing. But first, this:

Integral promotion is performed on integral or enumeration operands.

Believe me when I tell you that this section changes nothing and you should skip it.

I have an integral operand (1u), so integral promotion must be performed. Here is the part of the standard that deals with that:

4.5 Integral promotions

1 A prvalue of an integer type other than bool, char16_t, char32_t, or wchar_t whose integer conversion rank (4.13) is less than the rank of int can be converted to a prvalue of type int if int can represent all the values of the source type; otherwise, the source prvalue can be converted to a prvalue of type unsigned int.

I’m going to cut a corner here: integer literals are prvalues, but I couldn’t find a place in the standard that explicitly declares this to be the case. It does seem pretty clear from 3.10 that they can’t be anything else. This page gives a good rundown on C++ value categories, and does state that integer literals are prvalues, so let’s go with that.

If 1u is a prvalue, and its type is unsigned int, I can collapse the standard text a little:

4.5 Integral promotions (prvalue edition)

A value of an integer type whose integer conversion rank (4.13) is less than the rank of int …

and I’m going to stop right there. Conversion rank what now? To 4.13!

4.13 Integer conversion rank

1 Every integer type has an integer conversion rank defined as follows:

Then a list of ten different rules, including this one:

— The rank of any unsigned integer type shall equal the rank of the corresponding signed integer type.

Without knowing more about conversion ranks, this rule gives me enough information to determine what 4.5 means for unsigned int values: unsigned int has the same rank as int. So I can rewrite 4.5 one more time like this:

4.5 Integral promotions (unsigned int edition)

1 [This space intentionally left blank]

Integral promotion of an unsigned int value doesn’t change a thing.

Where was I?

Now I can rewrite 5.3.1 with the knowledge that 1u requires no integral promotion:

5.3.1 Unary operators (unsigned int operand edition)

8 The [result of] the unary – operator … is the negation of its operand. The negative of an unsigned quantity is computed by subtracting its value from 2n, where n is the number of bits in the promoted operand. The type of the result is the type of the operand.

And, at long last, I get to do the negating. For an unsigned value that means:

[subtract] its value from 2n, where n is the number of bits in the promoted operand.

My unsigned int has 32 bits, so that would be 232 – 1. Which in hexadecimal looks something like this:

0x100000000 - 0x000000001 0x0ffffffff

But that leading zero I’ve left on the result goes away because

The type of the result is the type of the (promoted) operand.

And I am now certain that I know how -1u becomes an unsigned int with the value 0xffffffff. In fact, it’s not even dependent on having a platform that uses two’s complement  — nothing in the conversion relies on that.

But… when could this possibly ever matter?

For -1u? I don’t see this ever causing actual problems. There are situations that arise from the way that C++ integer literals are defined that can cause surprises (i.e. bugs) for the unsuspecting programmer.

There is a particular case described in the documentation for Visual C++ compiler warning C4146, but I think the rationale for that warning is wrong (or, at least, imprecise), but not because of something I’ve covered in this article. As I’ve already written far too many words about these three characters, I’ll keep that discussion for some time in the future.

Andrew Pollock: [life] Zoe's first week of school

Sun, 2015-02-01 09:25

By all accounts, I think Zoe had a great first week at school.

On Tuesday morning, I met Zoe and Sarah at school for her drop off. Zoe didn't seem anxious, in fact I thought all the kids seemed pretty calm. I'd say that Kindergarten and day care has meant that school isn't the first time kids go through one of these transitions any more.

We weren't the last parents out of the classroom, so I'm not sure how things went after we left, but Zoe was only a little clingy as we walked out, and sat down on the floor with the other kids in front of the teacher without any problems. I wasn't aware of anyone crying.

The P&C were running a "parents' cafe" afterwards, so we used this an opportunity to meet some other parents, and chat with the principal. I'm still really loving the community feel of this school.

After that, I walked back home, and checked my PO box. I received my certificates for completing my real estate licensing course, which was a great addition to the day. The first Thermomix I've sold arrived too, so now I have to deliver it to my customer.

After school, I met Zoe and Sarah at the Hawthorne Garage for a muffin, with Megan and Laura. Tanya came with Eva and Layla as well. All the girls had had a good day, and it was nice to be able to talk about their day.

Wednesday's drop off apparently went well. I walked to school to pick her up in the afternoon. She didn't see me waiting for her, so I got to watch her pack her bag up, and bring it into the classroom. She looks so big in her uniform and doing school kid stuff. We had a nice walk home together, talking about her day.

On Thursday, I thought I'd let her try out the after school care program that she's enrolled in for 30 minutes before I had to take her to her swim class, so she could get used to it before I start back at work.

I got there just as they were handing out fruit and crackers to everyone, so I let her have her fruit while I had a chat with the outside school hours care program coordinator, and then we went to swim class.

Friday was a big day. Zoe had a class in the library, a music class, and then a PE class in the pool. I'd always wondered how they'd wrangle 27 Prep-aged kids for a swim class, and I got to find out. They needed about 6 parent helpers. Four in the pool, and two on the pool deck. We also had to help get all the kids changed. I volunteered to get in the pool, since I was available. There was also the PE teacher and three teaching assistants in the pool. It was quite a production line getting the kids there and into the pool. They had defined "shoe areas" for the class currently in the pool and the class arriving, and everyone had to de-shoe and get appropriately attired for swimming while the previous class got out and dried off. We'd been told to send our kids to school in their swimsuits under their uniforms, so that made things a bit easier.

The first class was just to assess everyone's abilities so they can then group them in smaller groups accordingly.

After the class, Zoe apparently caused a minor scare by locking herself into a cubicle to get changed (they were apparently supposed to get changed in the open area). She emerged, changed, all by herself, but they had been concerned they she might have locked herself in there. I thought that was pretty funny, given she's been using toilet cubicles for at least a year.

I walked back home after that, and then walked back in the afternoon to pick her up. It's really nice that we're a walkable distance from the school. To cap the week off, Zoe got the "Star of the Week" award for her number recognition.

Overall, aside from Zoe being a bit grumpy and ratty at the end of the day, Zoe's been going really well. I think next week, with a full 5 days, will be interesting, as will the following few weeks once she realises that this is the new routine.

Chris Smart: Playing with Ubuntu Touch on Nexus 4

Sat, 2015-01-31 23:29

I figured it was time to re-visit Ubuntu Touch on my Nexus 4 and see how it was going.

I was already running stock Lollipop and just kicked up the Ubuntu 14.10 GNOME live image under KVM on my Korora 21 laptop and passed the USB device through.

Following the instructions was really easy to get it going. Actually it was just one command and I was soon booting into Ubuntu, so that was quite impressive.

It booted up and asked me the usual things, connected to Wifi, etc. The interface is still the same as it was last time I checked, unsurprisingly, however it seems to work much better now. The animations are smooth and it’s quite clean looking. The Apps screen is easy to follow and you can easily filter by app group.

Apps



Obviously things work slightly different to Android, for example I didn’t know how to close or switch apps. I found that quite frustrating until I accidentally kept swiping in from the right edge and a familiar looking sort of album cover of apps appeared. That let me switch to by clicking and close apps by swiping away (vertically, similar to iOS). You can also switch using a swipe from the left, which is like Unity I guess. I found that less useful as favourites are also in there and no differentiation between open or not. It sometimes also seemed get in the way though, like at the lock screen when you swipe to activate the pin screen; sometimes the quick draw would stay and sometimes it would flick you back to the lock screen, when you really wanted to just go to the pin. Anyway in terms of managing apps, the right swipe was more useful to me.

Switching apps

My thumb kept going for the non-existent home button, but after a few minutes I got used to swiping from the edges (which was sometimes hit and miss) so I don’t think that’s a major hurdle long-term. I noticed occasionally apps jumped around when swiping, but once I realised how to switch back that wasn’t a problem, just strange. The other thing I miss is a back button. I assume the design is similar to iOS where the apps have the back capability and show it at the top of the app, but I like Android’s implementation much more. It’s very powerful and works kind of like a browser back button. There were some times when (in Gmail for example) I went somewhere like a tab that didn’t let me get back from. So not having a back button would take some getting used to, I think.

Unlock swipe and quick draw

I liked how it did the privacy thing like iOS, asking for permissions when apps were opened. Clock, for example, wanted access to my location. I’d like to see that extended more vastly to all apps and be very well supported, it’s one of my major gripes with Android and partly why I normally run Cyanogenmod.

Device support and things like screen rotation was very responsive and the re-drawing of the screen very clean. I didn’t get many messages but the notification bar looks quite good, easy to use and the swipe left and right to select different settings like location, wifi, etc isn’t bad.

I added a Google account and it synchronised my contacts down and overall that worked OK. The Gmail app did try to re-direct me to the Android calendar app though Google Plus also redirected me to the browser and I had to re-log in, which was a pain with two-factor. Both side effects of using web apps I expect. So a bit of work to be done on the service integration side I feel, but it works at least.

The one thing I didn’t test, and I don’t even know if it works yet, was the “docking” to convert it into a full-blown Ubuntu desktop.

Overall, I think I could get used to the interface and perhaps even use it as my daily phone, if it wasn’t for one thing; it’s still quite slow. Apps take around 3-4 seconds to load, even after you’ve just closed and re-opened them, and that’s frustrating for an Android user who’s used to snappy response times. Once they are loaded though, they work quite well. I’m guessing there’s still some kind of debug going on, if so it would be cool if the stable image was stripped of debug and left that to the devel images.

Overall, really quite impressive how far the phone experience has come. Kudos to Canonical and the Ubuntu Touch team!

Clinton Roy: clintonroy

Sat, 2015-01-31 14:28

Work.

Got the pyconau15 landing page done, a small yay.

Working on slides for the lca debrief tomorrow.



Filed under: Uncategorized

Donna Benjamin: How does Drupal use these different terms? Route, Path, URL, URI, Link, Menu item

Sat, 2015-01-31 12:27
Tuesday, February 10, 2015 - 23:05

update: republishing with some notes from  Peter Wolanin , who has been working directly on the issues that caused me dive in here in the first place. Many thanks Peter for the clarifications and corrections!

Sometimes, diving in to try and help work on something in an open source project can leave you feeling stupid, lost and confused. Generally, you'll find you are not alone. Sharing the problem, and the solution when you find it, can be helpful to build your own understanding, but also might help others too. So, just in case I'm not the only one feeling lost and confused about why the path / route / link issue in Drupal is so complex, I thought I'd share some of my confusion and a little ray of light that might help unravel this tangle of related terminology.

In the Drupalverse, we use IRC to connect with each other.  So I popped into channel and asked:

Can someone describe how drupal uses these terms? route, path, url, uri, link, menu item - or point me to a reference?

Angela Byron generously responded with a rough outline of definitions, which I've fleshed out a bit below with some references.

Route

"this URL goes to this PHP code, and can only be accessed by these kind of people."

As far as I can tell, this is a relatively new concept for Drupal with routing and controllers, replacing the hook-menu system we had previously. Here's a couple of references that might be helpful if you want to build a deeper understanding.

update: Peter Wolanin wrote to say

In D6 & D7 the menu system was the routing system. "this is a relatively new concept for Drupal" is not correct. We re-wrote things in terms of Symfony classes, but the basic concepts are actually the same. In Drupal 7 the data is stored in the {menu_router} table, in D8 it's been moved to just {router}. The big different in D8 vs D7 is that a single path may match more than one route name. In D7 a path is identical to the route name, so there cannot be more than one.

URL

Uniform Resource Locator eg. "https://www.drupal.org/community" It's generally the address we use to find content on the web.

URI

Uniform Resource Identifier is often confused with URL because it's so similar. See the URI wikipedia page for more information. I'm not sure if or how Drupal distinguishes between the use of URIs, URLs and URNs (Uniform Resource Names), but let's save that yak to shave on another day.

The Build a module team made a video that describes the difference between a URL and a URI

What the difference is between a URI and a URL (a Drupal how-to)

update: Peter adds

Recent patches landing in core have adopted a URI field for storage for the Link Field, so you will (in the database at least) now start to see URIs like entity:node/5 and user-path:/blog Path

The path is like a pathway to find content eg. admin/content but because it can be an alias, it may not actually represent the location of a file on disk, which helps lead to some of the complexity under the hood in Drupal, and the confusion about when to use http://example.com/blog/yakshaving, /blog/yakshaving, or node/5

update: Peter notes

The Path section should mention at least the idea of "base path" - the prefix including the subdirectory that needs to be adding to an "internal path" to make a relative URL. It would also be worth noting that by adopting the new routing system we are trying to remove, as much as possible, use of or reference to the internal path in favor of routes when referring to a Drupal page.

and

the base path will usually just be a "/" unless Drupal is installed in a subdirectory. Link

<a href="/foo">foo</a> - This one seems pretty straightforward - it's the HTML markup used to point to a URI or path.

Menu item

A link in a menu - which could be pointing to a route, path or URI.

update: and final note

The term "menu item" here is wrong. It should be "menu link". In D6 & D7 a "menu item" is the thing that's been replaced by a "route object" in D8. However, I will acknowledge that in D6 and D7 there is a lot of code that may use variables or comments referring to a menu link as a menu item - this is generally a reflection of logic carried forward from D5 where they were actually the same thing.

Hope that helps you, it certainly helps me to lay it all out like this. And, just in case you're wondering how I fell down this rabbit hole, this relates to a series of critical issues holding up the release of Drupal 8.  If you can help, please get involved  or buy a ticket in my chook raffle to help fund the Drupal 8 Accelerate initiative.

Peter Hardy: Rostok 3D Printer Build

Fri, 2015-01-30 00:25

I’ve put off starting a 3D printer for a long time, mostly because I couldn’t think of anything particularly useful to do with it. But over the past year or so I’ve run off a few parts, and the list of things I’d like to have has gotten longer. So for my birthday a couple weeks ago, in a fit of delinquent irresponsibility I pulled the trigger on a Rostok Mini delta printer kit from 3d Printer Czar. Took just over a week from order to the delivery arriving, and it’s been taking up most of my free time since Tuesday afternoon.

Part 1: mechanical build

I managed to complete the basic mechanical build in 3–4 hours in one evening. The directions online are a little rough in parts, but mostly pretty thorough. The kit includes most tools needed, which was nice. But a hex key for the M8 bolts on the top belt bearings was missing, and my hands were very glad to have decent-sized pliers.

First minor issue I had was with bolting things to the printed parts. It’s important not to over-tighten these — I managed to crack one part slightly along the print grain tightening it a little too much. I’m not too concerned about it because it has other bolts nearby to take up the strain, but I was much more cautious after that one.

Second was with the two printed parts attached to the hotend. One seemed to warp slightly inserting the hotend, leaving the end tilted slightly to one side. Not really a showstopper, and worst case I’d be able to print a replacement part, possibly with a slightly wider insert for the hotend..

I only had one major problem after the build was finished. The build instructions don’t place anywhere near enough emphasis on how important it is to make sure the carbon fibre delta arms are the same length. Following the directions to the letter I eyeballed the rods to make sure they were about the same length, cut strips from a leftover screw baggie, wrapped them around the lead screws on my u-joints, and jammed them in to the ends of my rods. That left me with a central effector platform that was visibly a few degrees off level. And shortly afterwards I discovered that the rods were also pretty fragile — the u-joints liable to pull out of the rods with too much force.

I suppose this could be improved by packing the lead screws with thicker plastic, and then I’d be able to match the lengths of the rods more carefully by screwing the u-joints in and out. But decided to scrap that idea, and go with a more permanent solution. I’d build a jig to hold the rods in place and glue them.

Part 2: fixing the arms

Yesterday I unscrewed the arms and measured the rods more carefully. Found a good 1.5mm difference between the shortest and longest arms, which in hindsight is pretty ridiculous. With the effector plate in my hand though I was able to realise that the bolts holding it together were still barely finger-tight. Tightening them up held the whole structure together properly and straightened up the hotend nicely.

Building a jig to hold my arms while they were glued was simple enough. I took the length of the longest arm, added 34mm for the two Traxxas 5349 u-joints (they’re 22mm long and 10mm wide, so it seemed logical that the centre of the hole would be 17mm from the end), and an extra mm for luck. From there one could probably bang a couple of nails in to a block of wood and use that to make a series of arms the same length, but I started to overengineer a little. Starting with LibreCAD I quickly drew up a block with six pairs of screw holes the right distance (uh, 187mm for my arms).

This evening I wandered down to Robots and Dinosaurs, a pretty great maker space in Sydney, and used the laser cutter to cut a chunk of 8mm acrylic to shape. Then added longish bolts and fixed them in place to make my jig. Filed the insides of the carbon fibre rods a little, then used extra strong, slow setting Araldite epoxy to glue the u-joints to the rods. Placed the joints on to the rods, fixed them down with another set of nuts, and then looped rubber bands over the ends to make sure everything stayed together.

I gave the glue a few hours to set, then took the arms off and tested them all on the same pair of bolts to make sure I hadn’t done anything too stupid. Not sure why, because I don’t know what I’d do if the arms were different lengths at this point. But they all slid over the bolts with the same amount of play, so I’m pretty confident I’ve got them accurate enough, and right now I’m pretty pleased with how well it worked.

So, next is to leave the arms overnight to fully cure. Tomorrow I’ll reassemble everything then get back to work on the wiring and electronics.

Ben Martin: libferris on osx

Thu, 2015-01-29 23:43
So libferris is now compiled and installed thanks to some of my handy work on Portfiles and macports doing the heavy lifting. I've put the Portfile into the distribution for many of the repositories; ferrisloki, ferrisstreams, stldb4, ferris, fampp2. And moved the source control over to the github -- https://github.com/monkeyiq/ferris



It's still a bit of a bumpy compile for ferris itself. Using clang instead of gcc, using the different stdc++ lib, the lack of some API calls on osx relative to Linux and the assumptions I'd made that IPC, advising the kernel on IO patterns, memory mapping and again advising on page patterns, would all be available APIs and contants. I have a patch from the compile which I need to feedback into the main libferris repo, making sure it still works fine on Linux too.



So now I can dig into xml files from the command line on osx too. I have to test out the more advanced stuff and the web services. The later use some of the 'Q' magic dust, qjson, qoauth, qtnetwork et al so they should be fairly robust after the port.



I should also update the primary file:// handler in libferris to use some of the osx apis for file monitoring etc to be a friendlier citizen on that platform. But going from no ferris on osx to some ferris is a great first move. A bundle would be the ultimate goal, /Applications/Ferris install in a single drag and drop.



Clinton Roy: clintonroy

Thu, 2015-01-29 21:28

Work. How is it not Friday yet?

Another day, another late leave time after another late finding bug.

I’ve started updating the pycon 2015 landing page, will get that finished for the weekend.



Filed under: diary

Clinton Roy: clintonroy

Thu, 2015-01-29 21:28

Work.

Spent a fair chunk of today dealing with the ghost CVE. Although our upstream provided updates, do to the somewhat unique way our machines are installed and configured, the upgrade wasn’t a piece of cake. There’s something about doing security patches that drain all the energy out of me to boot.

I did end up booking some accommodation for my Melbourne trip, centrally located to everyone I want to see.



Filed under: diary

Clinton Roy: clintonroy

Thu, 2015-01-29 21:28

Back to work day.

Not much to report.

I did start a twitter account for Humbug, BrisbaneUnix. yay? :)

I also booked flights for a lightning Melbourne trip, call it a birthday present to myself.



Filed under: diary

David Rowe: SM1000 Part 10 – First Over the Air Tests

Thu, 2015-01-29 17:29

Last night I visited Matt, VK5ZM, with a SM1000 Beta. He configured the SM1000 to interface to his IC706 using the CN12 connector patch socket. This allowed an RJ45 cable from the SM1000 to connect to the RJ45 mic/audio connector on the IC706. A few level adjustments and he was using FreeDV to talk to Andy, VK5AKH on 40m! It all went very smoothly.

Here is Matt in action, using the SM1000 in the hand-held mic configuration. He also tried a Heilsound headset, which also worked well.

Here is the audio received by Andy:

I was monitoring Matt’s FreeDV signal using FT817 and FreeDV on a laptop. I did notice a slope to the spectrum, and a cross shape to the scatter diagram (screenshot below). This suggests some of the carriers are at a lower level than others. This is bad news as these carriers will hit the noise floor sooner, causing bit errors and poor speech quality. I really need to look into this carefully, testing a selection of radios with a carefully crafted test signal to measure the tx transmit spectrum slope and flatness. This may explain why people running Flex Radios and SDRs get consistently good performance with FreeDV.

SM1000 Progress Update

Since the last post Rick has been doing some fine work on the enclosure. My beta PCB works well so we are happy with the electronics and firmware. Once we have checked the next revision of the enclosure we plan to start manufacturing the Beta units after the Chinese New Year holiday. I’ll start taking pre-orders shortly.

BlueHackers: Rat Park drug experiment cartoon – Stuart McMillen comics

Thu, 2015-01-29 14:02

http://www.stuartmcmillen.com/comics_en/rat-park/





Comic about a classic experiment into drug addiction science: Rat Park.

Would rats choose to take drugs if given a stimulating environment and company?

Read and learn.

Stuart McMillen is an awesome Australian based young artist.