The day started with introductions. Guido introduced himself as its all his fault.
Larry Hastings started the day with discussion on 3.5 release. 3.4 release was actually in 16 months. He wanted a feedback on the next release, if we want it in a smaller release cycle than the usual 18 months. Guido mentioned to stay with the 18 month cycle.
Larry also asked about opinions on state of the SCM after release candidate 1, should we create 3.5 branch and if yes then should we allow people to commit there or not? Default should point to 3.5.1 or 3.6 at that time? There can be another scenario where we do not create the 3.5 branch and keep the default as 3.5 release itself. The discussion will continue in the mailing list.
Next topic in the agenda was reports from different implementations.
Alex Gaynor gave us the current status of PyPy project. There will be a second fund raiser on STM. The next release is targeting 2.7.6, there were a million downloads. While discussing about Python 3 branch he explained that it it only 3 bugs away from shipping and it is based on 3.2.
There was a small discussion about state of CFFI for standard library inclusion. Alex and David Beazley are supposed to work on cleaning PLY for the same. General opinion was that it should not be hidden as a private part of the standard lib.
Dino Viehland talked about the status of Ironpython project. Development is going on both 2.7 and 3.x series. 2.7.4 was released last year. Many new contributors came into the project which is a good news.
The developers sent a detailed report to Micheal Foord and he will forward it to the python-dev list. The takeaways from the mail are
- Small number of contributors is a big problem.
- 2.7.beta2 is tagged which used Java7.
- Buffer protocol work is done (foundation to Python3 support).
- They are also working on PyPi tooling.
- There is also hope for releasing CFFI backend for Jython during Europycon sprints.
When it was asked that if the other implementations want the standard library as a separate module to be resused, all agreed as 'No'.
It was the longest discussion which made hungry developers really hungry :) Jokes aside, Nick Coghlan gave a detailed report on the advancement of the packaging world. Most of the development/design discussions are now happening on the distutils sig and in pypi mailing lists. He managed to put the use cases a very broader audience now, so we can except better feedbacks. On the development side, Warehouse is now implementing all old API(s), you may want to try it out at https://warehouse.python.org/.
3.4 has pip included, one usecase was to help people who downloads binary installers from our site. They can now install Django or other projects in wheel format.
Everyone also agreed that having the buildsystem inside the language is a bad idea. The buildsystem should be able to do cross-version builds.
Nick also pointed us to http://packaging.python.org/ which is the documentation for the whole echosystem. We all agreed that the Python echosystem is bigger than the core interpreter.
Glyph wants a PSF fund to a usability study on Python. There were a few other suggestion on PSF support for tooling development.
Kevin Modzelewski explained how they are rebuilding a complete vm which is targeted to Python, this also means too much work but one can customize. It is targeting Python2.7 as Dropbox runs on it.
At this time of discussion Nick pointed us to http://speed.python.org/, target is to have a common set of tests to benchmark different implementations. He asked if any of the implementations wants to maintain it. We need more volunteers for that. A common set of cross-implementation benchmarks stays at http://hg.python.org/benchmarks and the mailing list for discussion is at https://mail.python.org/mailman/listinfo/speed.
Selena Deckelmann talked about few pain points from teaching and outreach.
- Website is confusing. (Should I go for Python2 or Python3?)
- Packaging and installer problem
- So many different bug tracking system is also confusing
- OPW program for Cpython, this is the first year we are participating.
- Jessica McKellar will write "brand new coder tutorials".
Matt Mackall talked about Mercurial's painpoints for Python3. It currently works for 2.4-2.7, though he might drop 2.4 support in near future. It will be on 2.7 till RHEL7 is not EOL. He also said startup time is concern for him. Only big positive point he can see in Python3 is SNI. That feature allows you to do HTTPS to non ip based virtual hosts. Porting whole Mercurial to Python 3 is still a very big work. They had two gsoc students in last two years.
From here the talks suddenly moved into mythical Python 2.8 which we will not have, nope, sorry :) Guido wants a feature list from the people who are asking for 2.8 to understand better. We also want to help developers to make a single source for Python 2 and Python 3 release less painful.
Python 2.7 is alive and in good health and support will continue on the same.
Few points were talked about from 3.5, like byte formatting, unicode surrogate, binary mode cleans for bytes etc.
This was my first FOSSASIA. The event was in Phonm Penh, Cambodia. We reached the city one day before the event. The night before the event there was a pre-event meetup with the speakers and volunteers. There were 71 speakers from 21 different countries. Met few old friends after long time and made some new friends.
I spent the most of the night in room 317 with Praveen and Gnokii preparing the demo during my talk.
Day one started with a packed house. We all were in the top hall. Mario and Dang Hong Phuc gave an introduction about the whole event. After that there were many talks from the projects. I want to mention two talks from there. In one talk the Swedish Ambassador Anna Maj Hultgård talked about ideas Sweden stand for and all the freedom aspects in life. It is great to see her on twitter.
Cat Allman from Google talked about past, present and future of GSOC. "Teaching mailing list etiquettes to students" is very important and her slides proved that again. You can share Mbuf's presentation on the same to the new people.
Kate Chapman's talk on OSM was also important for the students. Later in her workshops and talks she demoed lot of things in full details.
Fedora team had a room at the end of hallway and we started our talks there. Gnokii gave some nice introduction to Fedora project, Tunta's talk was also in the same pace. My talk was about testing Fedora cloud images in Eucalyptus cloud. You can find the slides online.
Then download this json file and run the tool like below.
$ pias play fedora_eucalyptus.json
Press any key and see the magic. You have to press enter for real life enter events though :D
On second day I gave my talk on "Document your code", slides are here.
Spent many hours talking with other speakers, talks continued to the after event parties, one such was in a boat on the river. It was good to see that many speakers already tried previous versions of Eucalyptus. I talked more about current features of Eucalyptus.
Last day of the event was in Open Institute. We had a Fedora workshop sessions there. People were introduced to the different parts of the project. We found our first ambassadors from Cambodia. From India 3 people also started their journey with Fedora. I introduced gpg and ssh to the people and we had a small key signing party in the same place.
The total experience of FOSSASIA is good, it was meant to be a place to meet fellow developers and discuss and hack on new things. I was happy to meet Praveen Patil in this event. He will be become a good contributor in Fedora Project just like Sarup started doing these days. I also learned a few things from him about Expeyes project.
I should thank Mario and Hong Phuc and all other volunteers of the event to make it a grand one. You can find all the photos from the event in my flickr set.
It is moving to a new home, kushaldas.photography. In case you are looking for a wedding photographer (I am currently located at Kolkata, India), you should visit the site.
Many students already asked me this. They all want to do project work or just want to see what is cloud but not sure how that helps. So this post is for those students who are still wondering if they should install a private cloud or not.
Cloud is still new in the market. You want to have a look or just want to learn the basics. Having a private open source cloud will fit in your budget as you don't have to use a credit card (which most students do not have anyway). You can install them in your old desktop and keep learning different technologies in this field.
As in the last paragraph we know that with private open source clouds you don't have to spend money to learn.
After installing a cloud at your house or hostel room you can just use it to learn other latest technologies. You will not be spending time to setup new vms or computers, instances are cheap, after you are done with them or if you mess up stuff, you can just terminate them and start new ones. For example I used my cloud on my desktop to learn Ansible. I was creating couple of CentOS instances and trying out on them. When ever I wanted to test my scripts I just started new instances and run against them.
Almost every major Linux distributions release their own cloud images, which are small in size too. You can just install them in your cloud and try out the distributions. Fedora cloud sig always pushes newer images which you can use. To download them visit this link.
I am moving the development/testing work inside similar instances I use in Linode. The current dev/testing environment seats on table and looks like this.
Yes I know I have to fix the cables but for now this works great. Adding cloud images of different distributions I test against. In case you want to know what is inside look at the screenshot.
In case you are looking for a cloud which you can deploy in your own infrastructure and manage it easily without needing an army of devels & admins, you should have a look at Eucalyptus, the source is in github.
Here is a screenshot from someone's cloud, a large cloud actually.
s3cmd is the command line tool to access files in the Amazon S3 object storage. It is written in Python.
Walrus is the object storage of Eucalyptus.
Install latest version of s3cmd using git in a virtual environment.
$ virtualenv s3 $ source s3/bin/activate $ git clone https://github.com/eucalyptus/s3cmd $ cd s3cmd $ python setup.py install
The default configuration filename is .s3cfg
Following is a minimal example.
[default] access_key = MRKEEDJHJKQRLMV3K2FB94 secret_key = 3Jy1VKDZmVpwdsffdf8d2PsmfhVojfAW8RmFO2FD host_base = 192.168.1.100:8773 host_bucket = 192.168.1.100:8773 service_path = /services/Walrus
access_key and secret_key are from your eucarc file. You also know the ip of the host.
$ s3cmd ls 2013-12-24 16:27 s3://foolto 2013-10-19 13:56 s3://mybucket 2013-10-24 15:35 s3://official 2013-12-03 14:47 s3://snapset-5599d8c1-296f-480f-b2be-1e2b03933e42
$ s3cmd ls s3://foolto DIR s3://foolto//t2/ 2013-12-24 16:51 52680 s3://foolto/lscpu
$ s3cmd mb s3://testbucket Bucket 's3://testbucket/' created
$ s3cmd put .s3cfg s3://testbucket/sample-configuration.txt .s3cfg -> s3://testbucket/sample-configuration.txt [1 of 1] 213 of 213 100% in 0s 668.66 B/s done
In this example we uploaded the configuration file to the testbucket. We can list the bucket content once more.
$ s3cmd ls s3://testbucket/ 2013-12-26 04:57 213 s3://testbucket/sample-configuration.txt
$ s3cmd get s3://testbucket/sample-configuration.txt s3://testbucket/sample-configuration.txt -> ./sample-configuration.txt [1 of 1] 213 of 213 100% in 0s 1315.45 B/s done
$ s3cmd del s3://testbucket/sample-configuration.txt File s3://testbucket/sample-configuration.txt deleted
Yesterday we had a session on Eucalyptus in my house. Total 7 people attended the session including me. We started with an all-in-one cloud installation on the Inter NUC(s). After the cloud is up and running, I installed Fedora 20 cloud image on it.
During the installation we had some nice discussions around different technology choices and features of Eucalyptus. Few people also noted the key differences and similarities between OpenStack and Eucalyptus.
Today evening we had a session on "Open Cloud" using Eucalyptus Community Cloud on #dgplug channel on freenode. 15 people attended the session. We went through the different parts of the user console. People created security groups and key pairs. Everyone started their own instances (with little hiccups) and sshed into them. The UI is simple enough for the students to get the idea.
In future I will be doing more sessions on IRC, starting from installing your own private cloud to learning different technology using cloud. I will also put the notes on my blog. If you think I should cover any particular piece of technology please leave a comment in this post.
We have another great release, already 10 years over. I still remember the day I read about Fedora for the first time, I was still running RHL7.3, never upgraded from there. Had some mixed reaction about the announcement but after trying out Fedora Core 1, it was all fun.
Over the next few years, myself became part of the amazing community. People were from every part of the world, made some great friends and, we go along very well still now. Releases after releases, people worked very hard to make sure things are in shape. Thanks to all those volunteers who made this possible.
I am still waiting for the new laptop, as soon as I get it, my first step will be to install Fedora 20 on it. I am already running it in my private cloud at home and now you can also do that very easily.
Yesterday I packaged the official cloud image into an eustore image and, it is now live in emis.eucalyptus.com and, also on Eucalyptus Community Cloud. If you are running a private cloud, you can just install with the following command
# eustore-install-image -i 0355237665 -b testbucket
If you have an account in the community cloud, you can start a new instance with Fedora 20 or you can apply for a new account here.