[g12]

Archive for the ‘programming’ Category

programuotojų dienos proga

Žinot, gali turėti unikodinę duombazę, unikodą palaikančią sistemą, galų gale atprintinti invoisus ir shippinglabels’us su visais reikiamais unikodo simboliais. Juk XXI amžius, pasaulis susitraukė iki vieno klavišo dydžio ir net negali nuspėti kokia kalba kalbės tavo būsimas klientas ar verslo partneris. Bet gali daužyti galvą į prekystalį žiūrėdamas kaip pašto darbuotoja paėmusi tavo siunčiamą paketą lėtai spausdina kompiuterio klaviatūrą vienu pirštu (taip, trečiuoju, nesuklydot) pavardę “Voß” ir susidūrusi su trečia raide gerą minutę žiūri į siuntinį pasimetusi, po to klausia “tai kaip man dabar čia rašyt?”. Ir neturi ką atsakyti. Visai, nes tiesiog. Net nekalbu apie “惠如 吳”.

Tiesa, yra kas nuėjo lengviausiu keliu, neatspėsit:

Ir nors lipk atgal į medžius.

 

netikėtai

nes niekad negalvojau, kad parašysiu piece of  software, kuriam, keliant jį į nuliovą servaką, reikės pusantros valandos dependencių instaliavimo…

ko reikėtų vengti

Tai tokių selektų:

SELECT CEIL( ACOS( SIN( RADIANS( 54.6768257 ) ) * SIN( RADIANS( SUBSTRING_INDEX( REPLACE( latlon,  '(',  '' ) ,  ',', 1 ) ) ) + COS( RADIANS( 54.67 ) ) * COS( RADIANS( SUBSTRING_INDEX( REPLACE( latlon, '(',  '' ) ,  ',', 1 ) ) ) * COS( RADIANS( SUBSTRING_INDEX( REPLACE( latlon,  ')',  '' ) ,  ',', -1 ) - 25.27 ) ) ) *6371 ) AS distance
FROM epdb_products

Nes debuginimo po to savaitei…

įrankiai ir lokalizacija

Apie softo lokalizaciją turiu tokią labai paprastą nuomonę: jei nori viską sugadinti – lokalizuok. “Softas”, aišku įrankio prasme, web’ui kiek kitokios taisyklės, tiksliau ten jokių taisyklių. Nes kam teko sėdėt prie prancūziško windauso tas pats žino.

WordPress yra du viename – vienoj pusėj gali būti bet kas, tarkim lokalizuotas web’as, kitoj pusėj – įrankis. Turinio valdymo sistema. Ir labai negerai, kai ta sistema išversta taip, kad pasidaro net nebeaišku kas kur ir kodėl. Būna.

Pradėjau daryt tokį wp-config.php failą:

if ( preg_match('/\/wp-admin/i', $_SERVER['REQUEST_URI']) ) {
    define ('WPLANG', 'en_EN');
}
else {
    define ('WPLANG', 'lt_LT');
}

Dabar patogiau.

DBQ

Penktadieniniai DB Query’iai:

db> selectinam VISKĄ VISKĄ;

Kuris priminė Labai Aukšto Lygio DBVS duombazės sukūrimo komandą:

db> NORIU DUOMBAZĖS;

Ir tą pačią komandą su debuginimu:

db> NORIU VEIKIANČIOS DUOMBAZĖS;

batareikos +

Paprastas atsakymas į klausimą “o kodėl Python’as?“. Parseris randantis reikiamą skaičių:

import urllib2
import re
 
class Ice:
    def __init__(self):
        self.getData()
        self.parseData()
 
    def getData(self):
        website = "http://meteo.lt/hidro_informacija.php"
        self.meteoHTML = urllib2.urlopen(website).read()
 
    def parseData(self):
        start = self.meteoHTML.find('Kauno marios - Darsūniškis')
        try:
            thickness = re.search('(\d+)', self.meteoHTML[start+26:start+56]).group(0)
            self.thickness = int(thickness)
            self.error = False
        except:
            self.thickness = 0
            self.error = True
 
    ...

4digitPostnameFix

When your permalinks structure is set to /%postname%/ and you have reached post ID’s 1000 up to 9999 and when you don’t enter post name before saving:

  • you get your post link something like this: yourblog.com/1234 (or any other four digits – post ID)
  • WP interprets this link as year 1234 archive
  • there is no posts (mostly) posted in year 1234 :)

To fix this you must edit permalink manually or use some simple code:

add_filter('wp_insert_post_data', 'escape_post_name');
 
function escape_post_name($data){
 
	$name = $data['post_name'];
 
	if (preg_match("/^\d\d\d\d$/", $name)) {
		$data['post_name'] = $name . "_p";
	}
 
	return $data;
}

Download zipped as WP plugin: 4digitPostnameFix.zip

įrankiai

Susirinkau (na taip, pagaliau!) dažnai naudojamus įrankius į vieną vietą: http://g12.storas.lt/admintool

Labai gali būti, kad kažką dar vis esu pamiršęs :)

O kokius įrankius naudoji tu?

atlasų užkariavimas

Kartais atsiverčiu ir net širdis apsąla – projektukas į kurį įdėta tiek nemažai širdies gyvuoja ir užkariauja pasaulį:

13namas.lt

Mano nukauta

Mano nukauta

Idėja buvo tokia paprasta, bet užkalbliuojanti: “O tu žinai, rinksiu kolekciją. 13 namų nuotraukų.” Nieko daugiau man ir nereikėjo, supratau viską (gal kai ką ir savaip, eee, empatija…) ir tiesiog perėjau prie techninių detalių.

Techninės detalės tokios: kadangi tai yra nuotraukų kolekcija, tai labai gerai tinka blogo variklis (tas blogo variklis tinka dar daug kam, bet ne dabar apie tai). Pirma mintis ir buvo: blogas (WordPress – negi žinote ką geriau?) su gatava fotoblogo tema. Žiūrėjau, varčiau fotoblogų temas ir kuo toliau tuo labiau supratau, kad tai ko noriu aš ir tai kas yra pasiūloj prasilenkia lygiai tokiu santykiu, kiek užtrunka nuo nulio parašyt WordPress temą. Taip ir gavosi tai kaip aš matau fotokolekcijos blogą. Ir funkcionalų ir su paslėpta sypsena ir…

Netechninės detalės: kai pabandžiau nukauti porą tryliktų numerių mano gyvenimas pasikeitė. Apsivertė aukštyn kojomis. Viskas kas buvo svarbu anksčiau tapo nebesvarbu. Dabar mano gyvenime… Juokauju. Bet išties tai supratau, koks nepastabus anksčiau buvau – kasdieninėj erdvėj detalės tampa nematomos. Tas nieko naujo, bet pataisoma :) Ir jei kas turit kur netoli tryliktuką ir fotiką po ranka (kad ir mobiliaką) - atsiųskit foto Salomėjai, ji labai laukia :)

[g12] © ~10 000 b.c.
Powered By Wordpress