Skip to main content

Ralsina.Me — Roberto Alsina's website

Blogging from Latinoware again

Last night while eat­ing one of the Python Brazil guys told me about the Light­ning Talks ses­sion tak­ing place to­day.

Since I am ba­si­cal­ly in­sane, I was con­vinced to do my first light­ning talk:

  • In span­ish in front of a pure­­ly brazil­ian au­di­ence

  • Cre­at­ing it while hav­ing break­­fast 1 hour be­­fore the event

  • Af­ter ex­ceed­ing the al­lot­t­ed 50! min­utes 2 days ago

So, in short, I was ter­ri­fied. I got there, sat at the back, start lis­ten­ing.

I was 4th in or­der.

1: doctests (nice)

2: pro­nounce­able pass­words (nice)

3: MVC in gtk... I did­n't un­der­stand a word, and ran out of time.

So, I am now think­ing no­body will un­der­stand me at al­l, so I will slow down, run out of time, and will then give the worst light­ning talk ev­er.

I'm next up. My top­ic: how to build a spread­sheet in 5 min­utes.

Amaz­ing­ly, it worked rather well, the "M­C" asked me for a copy of the code, and said it was a neat ex­am­ple. Noone looked hor­ri­fied or ROFLing, so I am at least some­what hap­py about it.

Here is the code for you, too: ss­in5min.t­gz

I would do it again. But if I am do­ing it again here, I am learn­ing por­tuguese first.

Blogging from LatinoWare

Just fin­ished speak­ing about PyQt pro­gram­ming in Lati­noWare.

It went ok, but I ran out of time, so no Q&A, and I could­n't show about 20% of the code. :-(

Any­way, here is the code in its dif­fer­ent stages, so you can see the "evo­lu­tion" of a sim­ple PyQt ap­p. I will prob­a­bly turn it in­to a re­al tu­to­ri­al in a few days and post it.

Here is the guide I was us­ing for my­self when do­ing the pre­sen­ta­tion:

    1. App back­­­end (1/­­to­­­do.py)

    2. Ba­sic win­­­dow with a treewid­get Col­umns Task/­­­Date/­­­Tags

    3. Com­pile archi­­­vo .ui, show how it works

    4. Tem­­­plate for main.py

    1. Load back­­­end da­­­ta in the task list

    2. Show in­­­ter­ac­­­tion is bro­ken

    1. Ex­­­plain sig­­­nal­s/s­lots

    2. Show dif­fer­­­ence be­tween 1/­­­main.py 2/­­­main.py

    3. Ex­­­plain au­­­to­­­con­nec­t, show on_lis­­­ta_item­Changed

    4. Show task per­­­sis­­­tence work­ing

    1. Fix tree dec­o­ra­­­tions

    2. Make items ed­itable

    3. Ex­­­plain changes in on_lis­­­ta_item­Changed

    4. Ex­­­plain the prob­lem with ed­it­ing date and tags in­­­­­line

    5. New idea: use a di­a­log to ed­it tasks (ed­i­­­tor.ui)

    6. Ex­­­plain lay­out man­agers

    1. Show changes in main.py

    1. Ac­­­tions

    2. Show ac­­­tions in de­sign­er

    3. Show ac­­­tions in main.py

    1. Tray

    2. Show tray class in main.py

    3. Show tray be­hav­iour

    4. Show dif­fer­­­ences in main.py


Contents © 2000-2023 Roberto Alsina