Python 3.7.x introduced a new method to insert a breakpoint in the code.
Before Python 3.7.x to insert a debugging point we had to write import pdb; pdb.set_trace() which honestly I could never remember (and I also created a snippet on VS Code to auto complete it).
Now you can just write breakpoint() that's it!
Now... the only problem is that by default that command will use pdb which is not exactly the best debugger you can have. I usually use ipdb but there wasn't an intuitive way of using it... and no, just installing it in your virtual environment, it won't be used by default.
How to use it then? It's very simple. The new debugging command will read an environment variable named PYTHONBREAKPOINT. If you set it properly, you will be able to use ipdb instead of pdb.
At this point, any time you use breakpoint() in your code, ipdb will be used instead of pdb.
During the last UDS party, I had an idea to improve Ubuntu development,
but I didn't know if it could be a good idea or a stupid one, so I
talked to Daniel Holbach and David Planella about it and they
were happy to hear about it and Daniel told me to talk about
this directly to Mark (and I did it).
Let's explain the basic idea.
From an UDS and the next one, it would be useful to have a
development sprint where people can talk about assigned UDS blueprints,
at which point they are on their tasks, if they have any problems and if
they will finish them within the next UDS.
Of course Canonical cannot organize another meeting, it would be
very expensive, so the idea is: why don't we use Google Hangout to
organize the sprint? I has a limit of 10 people, I know, but we could
select (for example) 5 from the community and 5 from Canonical. There
would be parallel meeting and tracks, we would use the same blueprints
used during the last UDS and we would add further notes. The
attendees would be able to listen and watch the stream and make
questions through the available chat.
What do you think about? I know that Canonical is already
organizing sprints and this could be a way to involve more the Ubuntu
Community. Maybe we should schedule a session at next UDS to talk
In these days I was thinking about: what could be done to improve
Maemo Development and power user experience? There are some points
that would need to be improved. This little list pretends to be just a
starting point. I hope to get some feedback so we can discuss further in
the maemo-developers mailing list.
Documentation: Maemo developers use different libraries and toolkit
(GTK, libui, ecc...). There is not a common place where I can look for
documentation. I've to visit each library website and get it. It would
be great to have a tool just like Qt Assistant, integrating all
documentation, including examples and aggregating external articles
using a "live RSS aggregator".
Kinetic scrolling: I really love
Mauku application because of its
kinetic scrolling, thanks to the Miaouw
library. It would be great to have
this kind of scrolling to be part of Hildon UI. Of course I'd love to
have Python bindings too :)
Eclipse Support: I think Eclipse support should be improved. I'd
like to have a tool that makes .deb creation easier so developers can
spend more time coding and not packaging applications. I'd like to see a
GUI designer integrated into Eclipse (for "integrated" I mean something
like Visual Studio GUI designer.... not an external tool like Glade).
Qt Creator: Trolltech (Nokia) just released a preview release of
their Qt Creator. A very
powerfull IDE to develop Qt/C++ applications. It's still in alpha
release, but... what about integrating Maemo development into it?
(Supporting Python development too).
Maemo SAS hosting: sometimes we (well.. me at least :D ) need to
write an application that uses a server part too and need to expose some
API. Maemo.org offers hosting for the project, but what about the server
part of the application? It would be fine if developers had the
possibility to have the server side hosted by Maemo.org or Nokia.
Better GPS support: the GPS unit shipped with N810 is something
unusable yet. I've tried using A-GPS too, but position fixing time is
still bad, compared to an external GPS/bluetooth receiver. I often have
to use my external GPS receiver to use my N810 without problems.
More audio/video codecs: often I'm not able to listen to online
radios, streamings ecc... just because of a missing codec for the
default Media Player.
These are just some ideas. Please feel free to comment them, I'd like to
discuss them together.