100% Give Away: Software Packages To Generate Massive Waves Of Traffic To Your Website http://t.co/PZP6v60I via @worldprofit
Sebastian Kügler: Desktop Containment moving to Plasma Quick
As many other components of the Plasma Workspaces, Plasma Desktop’s default Containment is being ported to QML. A technology preview of the containment is being demoed and can be tested by a wider audience now. While the port is mainly replicating the current desktop containment in QML, its interaction scheme to position and manipulate widgets on the desktop has been improved.
First of all, a note: The code presented in this article is not part of the upcoming Plasma Desktop 4.10. It can easily be installed on top of it, it might see inclusion in the summer 2013 release, however
In our Roadmap, you learn that KDE is currently porting many aspects of its workspaces to QML, with the goal to create a more modern user experience on top of state-of-the-art technologies such as Qt5, OpenGL scenegraph and Wayland. The move to QML is a gradual process, made possible by the componentized architecture of Plasma. Widgets and other components that make up the workspace are replaced with QML ports one by one. The premise is to not introduce regressions by shipping each component “when it’s ready”. Ultimately, we need a complete set of QML components to run the whole desktop (and at some point also apps) directly on top of the graphics hardware, leading to higher graphics performance and more available resources on the CPU.
One of the important pieces is the Desktop containment. This is the component in Plasma that is responsible for managing and laying out widgets on the desktop and creating the toolbox (which makes some “workspace actions” available to the user. In general, a “Containment” is an area on the screen (a panel, the desktop background, the dashboard, …), and it takes care of managing widgets, their position and sizing within. It also offers access to action specific to widgets, or the containment or workspace.
The currently shipped (also in 4.10) default Desktop containment is written in C++, using QGraphicsWidgets and offers free placing of widgets on the desktop, with a bit of edge and overlap detection and repositioning poured in.
Demo movie of the new QML Desktop containment
Most of the new containment is exactly the same as in the current default — this is done by design, we do not want to introduce radical changes to the workspace (and the users’ workflows), but rather improve gradually and in an iterative process. There are two areas (which in fact are closely related) where we did change a few things: positioning/sizing and visual cleanliness. These are expressed in two changes: integration of applet handle and positioning aids.
In order to reduce visual clutter, we integrated the applet handle into the applet’s background frame. Previously, it would be its own frame, and shift out as separate element from under the widget. Merging handle and background frame reduces the number of distinct elements on the screen and allows less intrusive transitions when the widget handle becomes visible.
The second important change is that we now provide helpers when the user moves and resizes a widget. When moving, we show a halo at the position the applet will snap to when dragged. This makes widget placement more predictable and allows the user to get it right in one go. We also align the widgets to an invisible grid, so applets automatically end up being aligned pixel-perfectly with each other, which leads to a more ergonomic workflow, cleaner appearance of the workspace, and again to less visual clutter.
An important aspect of the work on the QML containment, was to improve the bindings which load declarative code (QML) into Plasma shells, these improvements are included in Plasma 4.10, due to be released in early february. This includes the necessary platform features to allow running fully-featured QML containments, something which we have done in Plasma Active for a while, but within a more confined context.
As a result of this work, Plasma can now also load toolboxes written in QML. The Plasma Toolbox is the little widget with the Plasma icon you can see on top of many containments, and which gives access to actions such as add widgets, settings, shortcuts, etc.. The toolbox used with the containment shown is a 1:1 port of its counterpart in the current default (C++) toolbox. The name of the toolbox package is currently hard-coded in the bindings (it loads it from the org.kde.toolbox package and silently falls back to the C++ implementation if that isn’t found — a 4.10 feature), but it also opens up this part of the workspace to QtQuick goodness. The toolbox is basically a translucent layer on top of the desktop, so much freedom is given to other implementations).
A template and a bridgeThe code is not only there to replace the current containment, it also serves as a template for new developments. With the new containment bindings in place, it is now very easy to create your own containment, modify someone else’s and publish them to share them. The containment shown is just one example for what we can do with the QML integration features in Plasma. As Plasmoid packages are architecture independent, this of course works across devices and different workspaces.
The work that is upcoming in Plasma Desktop is further bridging the gap between Plasma’s interfaces for different devices and formfactors. Some of its code has been introduced in Plasma Active, and is now available in a more generic fashion also for Plasma Desktop (and Netbook). This brings us closer to one of our goals, having only one shell that dynamically loads a suitable interface (Containment, Widgets) for a given formfactor, use case, output device, etc.
Give it a spin
If you’re interested and would like to try it (we appreciate feedback, it’s especially valuable in this phase!), there are two ways to get this containment. The minimal requirement for it is Plasma 4.10-beta1.
If you’re using git, you will find the code in the branch called “plasma/sebas/desktop-qml”, just check it out and build it, install it, run kbuildsycoca4, and you’re done.
If you are using the packages, you can easily install the following two Plasmoid packages to your system:
If your system is using a version prior to KDE SC 4.10-beta1, the packages will install, but not work.
The following commands install the necessary Plasma packages into your home directory.
# create the package directory and go there mkdir -p `kde4-config --localprefix`/share/apps/plasma/packages/org.kde.toolbox cd `kde4-config --localprefix`/share/apps/plasma/packages/org.kde.toolbox # unpack the plasmoid package unzip ~/path/to/toolbox-git28012013.plasmoid # check if it's installed correctly, # this should list metadata.desktop and contents/ ls -la `kde4-config --localprefix`/share/apps/plasma/packages/org.kde.toolboxThen install the desktop containment package (If you’re updating the containment at a later stage, use plasmapkg -u.):
plasmapkg -i desktop-git28012013.plasmoidYou can now choose the new containment from Layout dropdown in the Desktop Settings, pick “Default Desktop (QML)” there.
I would like to thank Blue Systems for supporting my work on the above topics.
Bug fix numero 3 for @gnome ! #GNU #Linux #FreeSoftware https://t.co/FL4nfUCv
Free Manilla Software Account & Bill Organizer http://t.co/bVoxgR1P #FreeSoftware #OnlineFreebies #freebies #Giveaways
100% Give Away: Software Packages To Generate Massive Waves Of Traffic To Your Website http://t.co/PZP6v60I via @worldprofit
100% Give Away: Software Packages To Generate Massive Waves Of Traffic To Your Website http://t.co/DtG8ArRW via @worldprofit
100% Give Away: Software Packages To Generate Massive Waves Of Traffic To Your Website http://t.co/ZO1JKaBz via @worldprofit
The Fridge: Ubuntu Weekly Newsletter Issue 301
Welcome to the Ubuntu Weekly Newsletter. This is issue #301 for the week January 21 – 27, 2013, and the full version is available here.
In this issue we cover:
- Ubuntu Developer Week is back
- Ubuntu Stats
- Romero, the Ubuntu-BR-SC LoCo Team’s game server
- January Business Meeting for Ubuntu Ohio
- Parcel in the post: Stickers!
- Juju GUI now easily deployable in the Charm Store
- Ubuntu Cloud Images automated release updates publication
- Lubuntu Blog: 13.04 wallpaper contest
- Scott Lavender: Lunchtime Thoughts on Ubuntu Studio Team Structure
- Didier Roche: Unity: release early, release often… release daily! (parts 1-4)
- Michael Terry: Software Updater Changes in Ubuntu 13.04
- Jono Bacon: Community Driven Ubuntu Phone Core Apps
- Martin Owens: Give Jono a Break, Grow the Community
- Nicholas Skaggs: Introspecting with Autopilot
- Victor Tuson Palau: [Ubuntu QML] ToDo Android vs Ubuntu
- Ubuntu helped set the stage for today’s inauguration
- Ubuntu considers “huge” change that would end traditional release cycle
- Ubuntu CEO: two-year releases are only “an idea”
- The Engadget Interview: Richard Collins, head of Ubuntu mobile products
- In The Blogosphere
- In Other News
- Other Articles of Interest
- Featured Audio and Video
- Weekly Ubuntu Development Team Meetings
- Upcoming Meetings and Events
- Updates and Security for 8.04, 10.04, 11.10, 12.04 and 12.10
- And much more!
The issue of The Ubuntu Weekly Newsletter is brought to you by:
- Elizabeth Krumbach
- Jasna Bencic
- Howard Chan
- Nathan Dyer
- Matt Rudge
- And many others
If you have a story idea for the Weekly Newsletter, join the Ubuntu News Team mailing list and submit it. Ideas can also be added to the wiki!
Except where otherwise noted, content in this issue is licensed under a Creative Commons Attribution 3.0 License BY SA Creative Commons License
100% Give Away: Software Packages To Generate Massive Waves Of Traffic To Your Website http://t.co/Q1jNfxjn via @worldprofit
100% Give Away: Software Packages To Generate Massive Waves Of Traffic To Your Website http://t.co/hk2FNHbO via @worldprofit
Free Software Builds Your Email List http://t.co/GxIw7mtA
100% Give Away: Software Packages To Generate Massive Waves Of Traffic To Your Website http://t.co/PZP6v60I via @worldprofit
Jono Bacon: This Week’s Ubuntu Q&A
This week’s live video Q&A is in the normal time slot of every Wednesday at 7pm UTC (click here for the time in your location this week).
As ever, you are welcome to ask me absolutely anything about Ubuntu, Free Software, Community Management, Technology, or anything else. The only questions I don’t accept are tech support questions – Ask Ubuntu, IRC and the Ubuntu Forums are better resources for that.
To join, head over to Ubuntu On Air at 7pm UTC on Wednesday and you can ask your questions in the embedded chat box.
Look forward to seeing you all there!
Tony Whitmore: Cat and Kian
When I went into Cat and Kian’s kitchen, one of the first things I noticed was an OggCamp mug. Although they hadn’t attended that summer’s event, Cat and Kian move in similarly geeky circles to me and the redoubtable Les Pounder had sold them the mug at another event.
There was definitely a geeky theme to the wedding too. Guests were given their own Lego figurine to assemble as favours, and, as Cat and Kian had met after a late night at a Terry Pratchett convention, the tables were named after the Discworld novels. The wedding even had its own Twitter hashtag.
Cat and Kian were married at Bolton School, Lancashire. It was a pleasure to travel up north from Hampshire to photograph their wedding. Bolton School is one of the oldest schools in Lancashire, with grand wooden interiors and stone courtyards. The ceremony and reception were both in the Arts Centre, itself an impressive building with exposed beams. We were able to use the grand cloisters and gardens for photographs.
Cat’s dress had striking red panels and detailed embroidery was topped off with a delicate shawl Cat had knitted herself. Cat and Kian were almost inseparable during our photo session.
If you’re interested, you can see more of Cat and Kian’s wedding.
Pin ItRichard Stallman Was Right All Along http://t.co/RGHcWEeS #fsf #freesoftware @rms #rms #freedom #privacy
Michael Rooney: A Year of Freelancing
I had previously written a 6 month retrospective of freelancing, and now that it has been a full year, it seems wise to re-evaluate. Generally, everything has been going swimmingly, and there’s not much news to report. However, a few things have changed:
Separating Business and Personal LogisticsWhile I was previously paying myself a flat monthly amount based on my budget, evaluating my personal finances was still confusing with the business income being tracked alongside my personal assets. I didn’t want months without business income to look like I had lost money, as long as I was able to pay myself from business savings and stay within my budget. As such, I’ve stopped including the business checking and savings account balances in my personal assets on Mint.com and wxBanker. Now all I see coming in each month is my payment to myself without large swings from inconsistent business income, and it is very straightforward to evaluate the sustainability of my personal finances.
I’ve also incorporated as an S Corporation (Michael Rooney Inc), as this allows significant income tax savings via disbursements, plus some great benefits including a medical reimbursement plan and a Simple IRA. Acting as a corporation also can make life easier for your clients, as corporation to corporation work doesn’t require them to file a 1099, and also makes it less likely that you could be reclassified as their employee by the IRS. Talk to your accountant to see if an S Corporation is right for you!
Finally, I’ve been heavily using Freshbooks.com to track time and set up automatic recurring invoices; I just input the hours each day, and Freshbooks handles sending the client a monthly invoice.
Time & MoneyWhile my previous goal was to maintain my salaried income working ~20 hours per week and taking lots of vacation, I’ve found that this wasn’t a good fit for me for various reasons. First, my previous salary was an arbitrary amount, and I can thrive quite well on less while still maxing out a Roth IRA and having savings leftover. Second, I don’t feel a frequent need for vacation or “escape” as my current schedule feels very relaxed, especially as I can be pickier and choose the most enjoyable work when I need to find less of it. Right now, I’m able to comfortably support my budget with ~10-12 hours of work per week; anything extra is “work for work’s sake”.
Incubation and Recurring IncomeA specific goal for this year is to develop a recurring stream of monthly income from clients and incubation projects. On the client side, this comes primarily from monthly hosting and support plans. These are currently accounting for about 15% of my monthly budget, and I’d ideally get this to 25% in this quarter.
I’ve also been spending some time on incubation projects with the goal of contributing beneficial software to the world, which can be optionally supported by small recurring donations of $3-$5 per month. I think it is really cool how a personal project with only 1,000 paying users at $5/mo would generate a very significant $60K/year.
I’d love to hear from others who have iterated on their self-employed life and made improvements, or from anyone with any suggestions or comments!