Rok 2026 sotva začal, ale už v prvním týdnu se nashromáždilo nezvykle mnoho zajímavostí, událostí a zpráv. Jedno je ale jisté - už ve středu se koná Virtuální Bastlírna - online setkání techniků, bastlířů a ajťáků, kam rozhodně doražte, ideálně s mikrofonem a kamerou a zapojte se do diskuze o zajímavých technických tématech.
Dějí se i ne zcela šťastné věci – zdražování a nedostupnost RAM a SSD, nedostatek waferů, 3€ clo na každou položku z Číny … více »Vývojáři GNOME a Firefoxu zvažují ve výchozím nastavení vypnutí funkce vkládání prostředním tlačítkem myši. Zdůvodnění: "U většiny uživatelů tento X11ism způsobuje neočekávané chování".
Nástroj pro obnovu dat GNU ddrescue (Wikipedie) byl vydán v nové verzi 1.30. Vylepšena byla automatická obnova z disků s poškozenou čtecí hlavou.
Protokol IPv6 má již 30 let. První návrh specifikace RFC 1883 je z prosince 1995.
Byli vyhlášeni vítězové ocenění Steam Awards 2025. Hrou roku a současně nejlepší hrou, která vám nejde, je Hollow Knight: Silksong.
Byla vydána nová verze 26.0 linuxové distribuce Manjaro (Wikipedie). Její kódové jméno je Anh-Linh. Ke stažení je v edicích GNOME, KDE PLASMA a XFCE.
Jednotný seznam blokovaných internetových stránek vedený Českým telekomunikační úřadem obsahoval také Český telekomunikační úřad.
Byl představen webový prohlížeč Brow6el, běžící v terminálu. Pro prohlížení webu je využit Chromium Embedded Framework, vyrendrovaná webová stránka je následně zobrazena v terminálu převodem na sixely pomocí knihovny libsixel. Brow6el se ovládá modálním klávesnicovým rozhraním, inspirovaném populárním textovým editorem Vim. Demonstrační video s ukázkou používání.
Společnost Pebble představila (YouTube) chytré hodinky Pebble Round 2. S kulatým e-paper displejem, s open source PebbleOS a vydrží baterie přibližně dva týdny. Předobjednat je lze za 199 dolarů s plánovaným dodáním v květnu.
Na novoroční inauguraci starosty New Yorku Zohrana Mamdaniho bylo zakázáno si s sebou přinést Raspberry Pi anebo Flipper Zero. Raspberry Pi i Flipper Zero jsou explicitně uvedeny v seznamu zakázaných věcí jak na na veřejné pozvánce, tak i na oficiálních stránkách města.
Pravděpodobně všichni znáte Python. Jde o objektově orientovaný programovací jazyk s velmi čistým zápisem. Python má už v základní instalaci spoustu modulů, pro vše možné, nicméně kde to pokulhává, to je grafika a grafické uživatelské rozhraní. Zde je dostupné pouze Tk, které má ale své nedostatky, kupříkladu nevypadá nic moc (chápej, vypadá jinak než GTK+). To se dá řešit rozšířením PyGTK nebo jiným, nicméně pokud chceme psát hry, tak to stále nebude ono.
V tomto případě jistě sáhneme po rozšíření PyGame, to zpřístupňuje funkce knihovny SDL a doplňuje k ní několik dalších užitečných prvků. Výsledek je kombinací jednoduchosti a lehkosti Pythonu a možností SDL.
Abych si to vyzkoušel, pustil jsem si Moonsorrow a zkusil napsat malé přistání na měsíci (nebo na čemkoliv jiném). Výsledek je zatím dost k ničemu, jsou v něm chyby, je neúplné a tak podobně. Přesto, něco to dělá a to na padesáti řádkách a během půl hodiny. Což není vůbec zlý výsledek 
Na malém obrázku vidíte jak to vypadá
Běží to v okně, i když fullscreen pygame zvládne taky. Rovněž je to natrvdo ve velikosti 640x480, ale opět, to je jen pro moji lenost. Raketka je představována jediným červeným pixelem (opět, šlo by to udělat hezčeji, ale zase by to byla práce navíc
), vlevo máte údaje o vaši výšce, palivu a rychlosti. Brzdit můžete mezerníkem. Pohybujete se pouze a jedině nahoru a dolů, přičemž program nekompromisně končí po dosažení nulové výšky, pak už jenom vypíše konečnou rychlost.
Vzhledem k tomu jak je to krátké, tak si můžu dovolit sem dát celý zdroják
Předpokládám, že tam je pár chyb a dost věcí udělaných nic moc, ale pak už se mi chtělo moc spát…
#!/usr/bin/python
import pygame
from pygame.locals import *
grav = 1
def keyboard (rocket):
engine = 0
for event in pygame.event.get (KEYDOWN):
keys = pygame.key.get_pressed ()
engine = keys [K_SPACE]
if engine:
rocket.burn = 0.01
class rocket:
a = 0
burn = 0
def chpos (self, grav):
if (self.burn > self.fuel):
self.burn = self.fuel
burna = (self.burn * 1000) / (self.mass + self.fuel)
self.a = self.a + grav - burna
self.pos[1] = self.pos[1] + self.a
self.fuel = self.fuel - self.burn
self.burn = 0
def draw (self, surface):
surface.lock ()
surface.set_at ([self.pos[0]/100, self.pos[1]/100], [255,0,0,0])
surface.unlock ()
def __init__(self):
self.pos = [32000,0]
self.fuel = 2.0
self.mass = 1.0
disp = pygame.display
surf = disp.set_mode ([640,480])
pygame.init ()
pygame.key.set_repeat (50,30)
x = rocket ()
Fnt = pygame.font.Font (None, 40)
while (x.pos[1] < 48000):
if not pygame.time.get_ticks () % 30:
surf.fill ([0,0,0,0])
keyboard (x)
x.chpos (grav)
x.draw (surf)
osd = Fnt.render (str(48000 - x.pos[1])+' '+str(x.fuel)+' '+str(x.a), 0, [0,255,0,0])
surf.blit (osd, [0,0])
disp.update ()
print x.a
Tiskni
Sdílej: