Planet Sugar is a collection of personal blogs by Sugar Labs contributors. Sugar Labs is a world-wide organization of passionate people working together to solve the same problem: giving everyone an opportunity to learn to learn. Our community members write about what excites them about learning, Sugar, and the Sugar community. In the spirit of free software, we share and criticize—that is how we learn and improve and encourage participation by newcomers. Enjoy and join the conversation.
$ cd ~/srcBuild minijail:
$ git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
$ cd linux
$ git checkout v4.12
$ make x86_64_defconfig
$ make bzImage
$ cd ..
$ git clone https://android.googlesource.com/platform/external/minijailBuild crosvm:
$ cd minijail
$ make
$ cd ..
$ git clone https://chromium.googlesource.com/a/chromiumos/platform/crosvmGenerate rootfs:
$ cd crosvm
$ LIBRARY_PATH=~/src/minijail cargo build
$ cd ~/src/crosvmRun crosvm:
$ dd if=/dev/zero of=rootfs.ext4 bs=1K count=1M
$ mkfs.ext4 rootfs.ext4
$ mkdir rootfs/
$ sudo mount rootfs.ext4 rootfs/
$ debootstrap testing rootfs/
$ sudo umount rootfs/
$ LD_LIBRARY_PATH=~/src/minijail ./target/debug/crosvm run -r rootfs.ext4 --seccomp-policy-dir=./seccomp/x86_64/ ~/src/linux/arch/x86/boot/compressed/vmlinux.binThe work ahead includes figuring out the best way for Wayland clients in the guest interact with the compositor in the host, and also for guests to make efficient use of the GPU.
by Tomeu Vizoso (noreply@blogger.com) at November 06, 2017 07:07 AM
On May 10th to 12th, 2017, leaders and stakeholders from various industries, countries and continents gathered in the KIGALI CONVENTION CENTER to participate in the Transform Africa Summit. They all had one purpose: to foster constructive conversation towards building a Smart Africa. The Transform Africa Summit facilitated meetings for leaders from the public and private sectors to discuss policies and opportunities to accelerate the continent towards a socio-economic transformation, as the theme for the summit stated: “Smart Cities Fast Forward.”
OLPC and Foundation Zamora Teran participated in this summit as a wonderful example of how technology combined with commitment is indeed the solution to sustainability and development.

During the summit, Foundation Zamora Teran shared its experience with the One Laptop Per Child projects in Central America. As a part of its educational program, the Foundation Zamora Teran created the first digital island, Ometepe. This served as a relevant case study for the summit. Summit participants had the opportunity to interact with the OLPC and FZT teams to learn about the strategies they employ for success in their educational program. One such strategy for success focuses on actively engaging all relevant stakeholders, including educators, technical teams and operations teams, in the process. The three sectors work together to bring all stakeholders together in order to positively impact the community

During the exhibition, many officials from participating countries visited the OLPC/FZT stand to learn how its ecosystem could be a key to sustaining different development projects in their respective countries. Journalists and TV stations also had the opportunity to learn more about the OLPC/FZT services. FZT and OLPC conducted interviews as well.
The Summit was a wonderful opportunity for OLPC and FZT to build global connections to increase opportunities to provide children around the world with a quality, innovative education.
(Below are several interviews.)
In 2016, the Fundación Zamora Terán in Nicaragua entered Phase II of its One Laptop Per Child Educational Program. In an effort to strengthen the program, the Fundación Zamora Terán signed a collaboration agreement with FUNDECYT-PCTEX a non-profit organization based in Spain to continue to support the educational program throughout Central America.

The objective of the collaboration is to continue the social transformation process and strengthen the existing educational institutions. Extremadura, an organization based in Spain, is devoting resources to further support innovative education in Nicaragua. The organizations are working together to network, innovate, and scale the OLPC educational program. Estremadura is currently developing new educational applications for the XO Laptop. The organizations opened CEDSL in 2015, a space for educational innovation and training, using open source software and technologies. Teachers, university students, staff of NGOs and other foundations come to receive training on the use of technology in the educational process.
The project also strengthens the role of the private sector in achieving inclusive and sustainable growth in developing countries. The organizations promote and strengthen public-private partnerships by creating new, multilateral partnerships and alliances between national and local authorities, business and NGOs in order to facilitate the development of local capacity and the delivery of services, particularly in rural areas for women and other marginalized groups.
More than 390 people will benefit from this alliance, including technical staff and educational officers of the Fundación Zamora Terán (15), teachers from primary schools in Nicaragua (52), students of the San Judas Tadeo Educational Center of Managua (188), University students from UNAN, UdM and UNI of Nicaragua (105), university support staff of the Free Software Development Center (10), NGOs, technical personnel and Nicaraguan Educational Foundations (20 participants).

The applications developed for the XO Laptops will benefit 224,000 people in the region, including 45,500 children, and more than 1,000 teachers in schools in which the FZT has a presence in Nicaragua and Honduras. Applications developed during phases I and II of the project will be available through the XO Laptops and will be distributed nationwide. All XO Laptops use free software. In addition, the families of participating children will have the ability to access and use such applications.

Graphene Django is an easy to use library for writing GraphQL APIs within Django. But some of the documentation for Graphene is less than great.
When I was learning Graphene Django, I originally found it very hard to expose an @property value of my model to the GraphQL API. This article will look into how to do that, and also why it works.
Say you have a Poll object, and you added a URL property:
class Poll(models.Model):
...
@property
def url(self):
return 'https://pollsite/polls/' + id
Then you can simply add a line to specify its existence in the schema:
class PollType(DjangoObjectType):
class Meta:
model = models.Poll
interfaces = (relay.Node,)
# This is it, so simple and so functional:
url = graphene.String()
That's it. Just use the form property_name = graphene.DataType(). You can even use more fancy datatypes, like a graphene.List(graphene.Int()). There is a good reference to check it out.
First, we need to understand the resolver of the property. By default, the resolvers perform a getattr lookup on the object. This means it would like be this if we were to write it manually:
url = graphene.String()
def resolve_url(self, args, context, info):
return self.url
But that code looks stupid! Isn't the url attribute the graphene.String()? Isn't that code broken?
Well the self in a resolver doesn't represent an instance of the class. Or maybe it does. Anyway; Graphene is a festival of metaclass programming. So the self object is really the Django object, not your graphene object! Once I found that out, it all started to make a lot more sense to me.
Well, that's a very quick dive into the weird and wonderful world of the Graphene framework. Metaclass magic hey!
If you enjoy these random Graphene tips, make sure to subscribe below.
An empty array is zero:
> +[]
0
An array of length 1 is equivalent to the first value:
> +[1]
1
> -[2]
-2
Any longer, and the array is not a number:
> +[1,2]
NaN
One can add 2 arrays together:
> [1] + [2]
'12'
> [1,2] + [3]
'1,23'
> [1,2] + [3,4]
'1,23,4'
Or take them apart:
> [10] - [3]
7
> [] - [10]
-10
> [10,2] - [3]
NaN
And multiply or divide:
> [2] * [3]
6
> [3] / [4]
0.75
Or be wise with their bits:
> [4] | [2] // 100 | 010
6
> [4] & [12] // 0100 & 1100
4
> [4] ^ [5] // 100 ^ 101
1
> [1] << [2]
4
You can compare:
> [1] < [3]
true
> [3] < [1]
false
No matter the length:
> [1,2] < [1]
false
> [1] < [1,2]
true
Javascript, huh? What an interesting language. While so many have seen Gary Bernhardt's amazing talk "Wat", it is a good laugh to dive into a random part of JavaScript and see how it behaves. I found it very odd how a single-element array is automatically unwrapped for arithmetic operations. But I never knew the that array addition just does string concatenation. Isn't it odd that arrays are NaN if they are long, but not if they are short?
What's you favourite JavaScript quirk? Let us know on our IRC channel or via email!
OLPC San Francisco will be hosting our monthly meeting Saturday, March 11th, from 10:30AM - 1PM at the downtown SFSU campus, 835 Market Street, 6th floor, room 609.
Please RSVP:
https://www.eventbrite.com/e/olpc-sf-march-meeting-ethiopia-tickets-8350942895
This month, the **new** OLPC XO-NL3 Laptop is going to Ethiopia. Come and see the new device at work. We'll have a discussion with the project lead Andreas Gros of Facebook and project computer expert Sameer Verma of SFSU. Discussion will be moderated by Alex Kleider.
We will have Ethiopian coffee and light snacks.
Agenda
- Meet and greet
- Ethiopia and the new OLPC XO-NL3 Laptop
- Project updates
- Project working time
Our meetings are held on the second Saturday of every month. Everyone is welcome to join us for our monthly meeting! We'll be discussing the latest in OLPC events and give updates on our local (and global) projects. There will be plenty of XO laptops with the latest builds to play around with, too.

by Tomeu Vizoso (noreply@blogger.com) at December 22, 2016 08:58 AM
With the growing trend of internet and the proliferation of internet users, the business with e-commerce has been expanding. All the handy gadgets like mobile and tablets have further escalated the realm of e-commerce. Another major factor that has increased the pace of global online trading is the effective payment system. This helps the clients in getting the refined ways to pay for what they have ordered. With the use of state of the art tools and techniques available on the sites of global e-commerce, it has become easy for the customers to buy products which are not available in their local markets. But launching such website is not a piece of cake. There are many parameters that need to be analyzed before launching any global E-commerce site. It is imperative to delve into the detail of those five steps that helps to build an E-commerce site.
Before building an E-commerce site it is incumbent to analyze the demand and supply ratios for the products that are going to be launched by the site. For instance, it was observed that in China only a hand full of segments are available online. This presents that there is a lot of room available to build site of other much needed online retail segments by the clients. All such perspectives will enable the e-commerce operations to be successful not only in the local market but also the international market. Hence it is better to analyze and then select the products offered by the global E-commerce site under construction.
It is incumbent that the product should be made localized. This means that the product should make popular before launching it on the site. For instance, Mattel which is a toy making company launched Barbie doll in China. It was a complete failure because for Chinese girls this doll wasn’t attractive as this wasn’t as per the taste of the local people.
This means that the site should be localized in terms of language, style, and many shopping habits. It can be made clearer with the fact that if the site is unable to give a description of the products as per the language of the local people where most people would not understand English. This will eventually lead to failure of the site. So it is advised to hire a team for this purpose.
It is one the indispensable step. The site should manifest the price of the products as per the local currency. In order to enter the new market, it is important to launch the local prices for the successful business.
As we all know that cyber safety has become a menace to the digital world. All the overseas customers want their personal data to be protected. So while building a global E-commerce site make sure to put privacy center messaging across the whole site and to hire a team to resolve privacy-related concerns.
This is a world of technology and every person has access to the internet, so business owners also consider it an authentic and effective platform for advertising their products. There is so much competition around as everyone is offering a quality product, effective strategies, and every such service which is the requirement of a customer. Most of the aspects of a business depend on the success of its marketing position and the goal of a successful business is to improve this position.
Internet marketing is basically an online marketing strategy that promotes a brand, services or products through the websites. It involves many aspects of the website such as designing, advertising, sales, and development.
Writing is a better expression of ideas and this could grasp the entire world in a fist. It needs depth knowledge and greater skills to be on the top of the best writers. Writers, particularly of nonfiction subjects, have gained a lot from marketing as they know the best way to put all the pieces together. They are the crux of a successful business because of the following major aspects:
Inspire and Incite Action
Storytelling is a creative way to entice the customer for a particular product. The effective writers create the content in a contagious way that could grasp the readers and make them the regular customer of a particular product. They write each piece of a content using the inspirational, emotive, personal, and suspenseful stories. Such writers ignite the fire so strongly that the customers are compelled to stick to the company for a long lasting period.
Plan before they write
A good writer never merges the scattered pieces instead; he makes a contextual framework about a particular project before putting it on paper. The social media and the entire internet marketing always highlight the importance of quality writing, so the content writers are always under pressure to create a good and quality content for a company. An effective writer has always a properly documented strategy and they follow it accordingly to trap the customer through an appropriate and more effective route. They analyze the writing again and again to ensure the objective of writing. Moreover, they also look at the competitors to give a unique angle to the writing and make the product most popular among the competitors.
Fulfill the Company goals
The entire marketing world highlighted the importance of an effective writer. Such writers not only provide a share and same metrics but also enhance the page views and assess how long a customer stay on the company page. The effective writers actually make the way for attaining a large number of company goals, as the writing strategy is very much aligned with objectives of a company. Such strategy could help the business flourish, grow, gain customers, make money and also retain loyalty.
Hence, a good writer creates such emotive content that could inspire the customers or the readers to start following the company.
We are once again pleased to share that San Francisco Mayor Edwin M. Lee has declared November 5, 2016 as One Laptop per Child Day in San Francisco! The Proclamation was presented to Sameer Verma, Professor at San Francisco State University, and Founder OLPC SF by Carol Ruth Silver, a long time city official, social activist and author.
Tomorrow 11/5/16 will be @olpcsf Day in San Francisco @SFSU pic.twitter.com/U6lTMYtpYf
— Julio Feliciano (@j6design) November 5, 2016
Thank you @mayoredlee for declaring today, November 5, 2016 as One Laptop per Child day in San Francisco! #OLPC pic.twitter.com/F6PlHXGWT5
— OLPC San Francisco (@olpcsf) November 5, 2016
This is just an idea I had last night for improving the welcome screen UX, if it’s too much work or Dave and Yash don’t like it I understand. However, I may try to code it myself for fun if Yash doesn’t have time. :-)
My fear is that when users start the Edit Fonts activity for the first time they will be be lost and not understand what to do. Some users might not even have a basic understand of what vector drawing is or how a font is made. This welcome screen will at least give the users a basic idea about how to use the activity. Most importantly, this makes the first screen visualy interesting, interactive and fun. Many users may not continue with the activity if the first page is dull and boring.
I’m proposing that the welcome screen have 4 options, represented by icons and text, plus an editable .glyph that reads “Edit Fonts” in the Geo typeface. The Edit-Fonts logotype will be one .glyph file that is only loaded and never saved. see below:
I have added a Geo-Regular.ufo file to the gh-pages repo with a special “editfonts.glyph” logotype:
https://github.com/sugarlabs/edit-fonts-activity/tree/gh-pages/files/fonts/Geo-Regular.ufo

There are two neat things about this approach. First, it uses components we already have, the only work will be laying out the page, which Dave or I can attempt if Yash is too busy. Second, if the user never realizes that the edit fonts logotype is editable, it still functions as a logotype. A similar UX design pattern was used for the start screen of the game Super Mario 64, see below:
Last Saturday (July 9th) Eli and I met up to review the codebase, and the main issue I identified was that Travis was not set up with flake8 to test the codebase was conforming to the pep8 guidelines.
I’d filed Issue #17 for this, back at the start of the project on May 19.
Yash had started to develop the [.travis.yml](https://github.com/sugarlabs/edit-fonts-activity/blob/gh-pages/.travis.yml) file to build a .xo bundle but hadn’t complete this just yet, so I commended out most of the code and what remained is very simple:
# this makes travis run a fast Docker container system
sudo: false
# we use python 2.7
language: python
python:
- "2.7"
# we need to install flake8 to use it
before_install:
- "pip install flake8"
# we check the codebase
script:
- "flake8 --statistics --ignore=E402 --exclude=defcon,extractor,fontTools,fontmake,robofab,ufo2ft,ufoLib,snippets ."
You can see there’s a few arguments passed that are pretty simple.
Stastics prints the number of occurences of each error, so you can fix the most common issues across the codebase first.
E402 is about the order of imports, but since we need to import gi to version later imports, we can’t adhere to that rule, so we ignore it.
We also exclude all the third party libraries, and our snippets.
Eli and I worked together on this and I finished it up on Sunday in Pull Request #65
Yash had already set up Travis configuration, at https://travis-ci.org/sugarlabs/edit-fonts-activity, so once this was merged, our button went green:

Finally I added a CONTRIBUTING.md file that explains how to use it.
I’ll get a similar travis set up for the gh-pages branch too.
Perhaps we could also set up a git hook that runs the flake8 command on each commit…


by Kartik Perisetla (noreply@blogger.com) at September 11, 2015 05:39 AM
Sugar Digest
1. Google Summer of Code 2015 is wrapping up. The students have been writing their final blog reports, submitting last-minute patches, and uploading their code to Google. I want to take this opportunity to thank all of our students and their mentors for all their hard work this summer. (Also, thanks once more to Google for supporting this program.) Great strides along many fronts were made. Specifically,
In the Community
2. We will be holding an election for the Sugar Labs oversight board (SLOB) at the end of the calendar year. If you are interested (or know someone who is interested) in running for a board seat (all seven seats will be open), please add an entry in the wiki. Also, whereas ballots are only available to “members”, please officially join Sugar Labs.
3. Mariah Noelle Villarreal has submitted a panel proposal, “Building Free and Open Education Communities”, to the South by Southwest Conference (SXSW). The panelpicker voting period is now open until September 4th. If you have time, please vote and share with any appropriate channels as well as a video that was created for the proposal [16].
4. Sweet: Sugar contributors Mariah Noelle Villarreal and Ruben Rodriguez got married this summer!!!
5. There were three RED (Revista de Educación a Distancia) submissions from Sugar community members:
6. The Sugar/OLPC program in Caacupe is expanding!!!
Tech Talk
7. Peter Robinson announce quite some time ago that the Sugar on a Stick 21 Beta is now out as part of Fedora 21 Beta (Details), but I think I neglected to ever pass on the information to the Sugar community.
8. Also worth mentioning again: Ruben Rodriguez released Trisquel 7.0 released. TOAST (Trisquel with Sugar) is an official edition.
Sugar Labs
9. Please visit our planet.
As Tech Booms, Workers Turn to Coding for Career Change – The New York Times.
Looks like people can learn coding at 26, not just 6 or 16, and still do okay.
PODS picking up where Sugar Labs @ NDSU left off, except:
a. they seem to be charging for classes
b. they want to reach as many kids as possible but probably aren’t focusing on under-represented populations
c. they want to “enhance creativity;” we were trying to focus on computational thinking. Ironic.
by Michaël Ohayon (noreply@blogger.com) at July 24, 2015 06:57 PM
Kanye West stirred up a lot of interest in a brand new website on the day he tweeted out the link: yeezy.supply. That’s the kind of thing that happens, of course, when someone who has roughly a bajillion Twitter followers shares a link.
However, all that greeted the visitors when they arrived on the site was a countdown to February 12 and a three-minute video playing in the background.
People were quick to point out that February 12 was just in time for the New York Fashion Week, so the immediate assumption was that this would have something to do with the launch of his new shoe line for Adidas.
The website continued to go through a number of changes, with each new video sparking new discussion and speculation about what might be coming when the countdown hit zero. (This website tracked the changes if you’re interested in seeing the specifics. If nothing else, it’s an interesting case study in building and keeping interest without actually showing a product or anything of relevance.)
In the end, this was, indeed, to reveal his Yeezy Boost shoes, which were shown off at the New York fashion show.
Most people expected the site to become some kind of merchandise store for Mr. West as soon as the products were announced. The assumptions were wrong, though, and, as of the time of publication, yeezy.supply now was a timer that is counting up, instead of down. For a time it played a video of the fashion show, and now it has switched to a video of a live performance.
Who knows what it’s counting to… or why the fashion show’s soundtrack was just that creepy trumpet wailing?
And yet, people continue to visit the site in huge numbers (we have to assume), which goes to show that there’s a lot in a simple name. In this case, though, it’s probably safe to assume that the name that carried the wait was Kanye West, and not yeezy.supply.
What Hype Does for a Domain
When someone with so many followers tweets something, there are a lot of people who are going to automatically visit the site. Mr. West has the ability to build hype all on his own. He doesn’t need to go through the steps that most companies do to get visitors clicking on their links and going to their website.
So when Kanye puts up a link to yeezy.supply, it will send thousands and thousands of visitors to the website. It will even get hundreds of media websites to start linking to it and sending more traffic.
But when the hype dies down, you have to wonder: what good is this kind of domain really going to do him?
.supply? Does That Even Exist?
The vast majority of the internet users have probably never seen a domain extension like .supply. They know and expect .com first and foremost, and if not that, maybe a .net or .org. So without all that hype, what would people do? What are they most likely to type into the address bar in a browser?
Yeezy.com? That’s probably what most people would try because that is what we associate with web addresses.
Of course, they may just do a quick search for “yeezy” (and that assumes they know how to spell it right and don’t think that it’s meant to be “easy” with a “y” in front of it). If you search for” yeezy” today, what comes up is some news about the shoes, but not the actual domain. If you search for “yeezy.supply” you’ll see the tickets.yeezy.supply (as of the time of the publishing), and if you just type in “yeezy.com,” you’ll go to a page that says the domain is parked and not being used. But, let’s face it, the .com version just comes naturally to most people.
If they want any lasting search engine traction, they’re going to have to start working on it right now.
Why Would He Buy It?
Of course, we can’t speak to the exact reasons for buying such a domain, but we can always speculate. (And who doesn’t love speculating about the behavior of celebrities?)
Maybe someone told him that it was the Beyoncé of domain names, and that if he didn’t rush the stage and defend what he judged the better choice, then no one would understand how important it is.
Maybe he just felt that, like Beyoncé, the .supply domains weren’t getting the attention or the awards they deserved.
Maybe he just wanted to be different.
What Else Might have Worked?
If you’re going to go for a .supply domain name, why stop there? There’s a wide range of names he could have bought into that might have made just as much sense. Maybe something like:
Does It Count as a Premium Domain Name?
Our definition of a premium domain is not very complicated. The best domains are simple, short, and memorable. That’s pretty much all you need.
So does Kanye West’s new domain fit that definition? Well, the first half kind of does, but that .supply extension really blows it. While you could argue that it is unique enough to catch a person’s attention, it is not something that sticks in the mind. It doesn’t even roll off the tongue. Try it. What is smoother to say? “Yeezy dot supply” or “yeezy dot com”?
The moral of this story, then, is that if you have roughly a bajillion social media followers, you can make anything out of a strange domain. For the rest of us, you’re better off looking for something a little more effective. At DomainMarket.com we’ve spent years curating an extensive list of relevant and effective names so you can quickly and easily find the best one for your business.