sâmbătă, 27 iulie 2013

Smartphone iPhone 5S.

iPhone 5S
Web: www.magazinlinux.blogspot.ro Autor: +Mihai C. Data: Duminica, 11/08/2013


Sistemele de operare din piața smartphone-urilor este dominată de Android dezvoltat de Google cu o cota de piață de 80%, urmat de Apple cu iOS locul doi si Windows Phone.
Apple incearca cu noul iPhone 5S să mai recupereze din cota de piață, se pare cu noua funcție de recunoastere a posesorului pe baza amprentei la logare.

Discuţiile pe acest subiect au făcut referire şi la un posibil senzor pentru amprenta digitală inclus în butonul home al iPhone-ului. Cu câteva săptămâni în urmă, dezvoltatorii au descoperit un cod în următorul update la sistemul iPhone de operare, iOS 7, care făcea referire la un ”kit biometric”. Teoretic, senzorul pentru amprentă digitală va permite deblocarea telefonului fără introducerea unei parole din patru caractere, scrie businessinsider.com.


Conform altor zvonuri din industrie, Apple va introduce şi o versiune mai ieftină de iPhone, un model cu o carcasă din plastic. Aşa-numitul iPhone 5C va fi vândut la un preţ mult mai mic faţă de noul iPhone şi ar putea ajuta compania să avanseze pe piaţa smartphone-urilor.


Judecând după lansările anterioare, mai scrie businessinsider.com, pe 10 septembrie (in sectiunea Calendar puteti adăuga evenimentul în propriul calendar) Apple va prezenta iPhone-ul 5S unui grup de editori experţi în tehnologie care să îl testeze. Rezultatele ar putea fi publicate pe 17 septembrie, după care lansarea pentru public va avea loc, probabil, pe 20 septembrie (sursa: mediafax.ro).


Smartphone romanesc
Web: www.magazinlinux.blogspot.ro Autor: +Mihai C. Data: Vineri, 09/08/2013


Allview este o companie romaneasca ce produce si distribuie telefoane mobile Dual SIM si produse electronice. Brandul Allview este recunoscut ca fiind unul cu o dezvoltare rapida în Romania datorită serviciilor gratuite şi facilităţilor atasate produselor sale.


Adăugaţi o legendă
In primavara anului 2008, in urma unei analize a gradului de penetrare a telefoniei mobile in randul populatiei, managementul a luat decizia sa valorifice potentialul echipei puternice create de-a lungul timpului, prin includerea in portofoliului de produse a telefoanelor mobile dual SIM.


Allview V1 Viper este încă un telefon al braşovenilor care vine cu procesor quad core. Dar acesta nu asigură garanţia succesului. De data aceasta, Allview a integrat o strategie bună: posibilitatea de a schimba culorile telefonului, cu ajutorul a trei carcase oferite standard, un sunet foarte bun şi căşti de calitate, care merită însă îmbunătăţite şi un ecran excelent.


Ecranul este de 4,7 inci, HD, 1280x720 de pixeli. Culorile sunt saturate, iar personal mi se pare un lucru excelent. Saturaţia culorilor îmbunătăteşte impresia generală asupra unui ecran. Allview V1 Viper este un telefon care are un ecran mai scump de 1.300 de lei. Pentru video, browsing, foto, calităţile sunt foarte bune.




Telefonul este dotat cu un procesor quad core de 1,2 Ghz cu arhitectură Cortex A7. Procesorul este un Allwinner A31, despre care puteţi găsi mai multe detalii chiar pe site-ul producătorului.


Ca majoritatea device-urilor asamblate de braşovenii de la Allview, telefonul este dual-SIM. Am apreciat un detaliu interesant: un slot de cartelă este micro, altul este normal. Pentru cei ca mine care au două cartele, dintre care una este micro, e un detaliu avantajos.


Telefonul vine cu două camere. Camera principală este de 8 megapixeli cu autofocus, iar cea frontală este de 2 megapixeli. Înregistrarea video se poate realiza la format 1080p, la 30 de cadre pe secundă. Există HDR, bliţ şi detectarea feţei.
Surse: adevarul.ro, allview.ro


Sudoku


*
Bancuri:
La Radio Erevan, cineva întreabă:
- Ce poate face o femeie cu soţul ei care se uită tot timpul după fuste?
Radio Erevan răspunde:
- Va sugerăm să-l trimiteţi într-o vacanţă in... Scoţia.


Doi struţi la o discuţie.
- Ştii de ce ne băgăm noi capul în nisip?
- Nu ştiu de ce o faci tu, dar eu caut petrol!

HTC Desire 500
Web: www.magazinlinux.blogspot.ro, Autor: +Mihai C., Data: Miercuri, 07/08/2013

HTC a anuntat disponibilitatea modelului Desire 500 in Romania incepand cu aceasta luna. Recent lansat, noul terminalul va dispune de suport single si dual SIM pe piata locala, aducand cu el caracteristicile noii interfete Sense 5 si performanta sustinuta de un procesor cu patru nucleee, “la un pret accesibil”, conform comunicatului oficial primit astazi.

HTC Desire 500 vine cu un ecran WVGA de 4.3 inchi, un procesor quad-core pe platforma Qualcomm Snapdragon 200 la frecventa de 1.2 GHz, capacitate de stocare interna de 4 GB (+posibilitatea atasarii unui card microSD de pana la 64 de GB), 1 GB memorie RAM, camera foto principala de 8 megapixeli si una frontala de 1.6 MP, precum si o baterie de 1.800 mAh care asigura un timp de conversatie de pana la 12,1 ore pentru conectivitatea WCDMA (3G) si pana la 17,8 ore in GSM (2G).


Terminalul ajunge in magazinele din Romania in versiuni single si dual SIM, iar in ceea ce priveste specificatiile nu apar modificari majore decat la capitolul conectivitatea. Modelul cu doua cartele SIM va dispune de functia NFC, in timp ce versiunea single SIM nu va avea parte de aceasta caracteristica. In rest, ambele modele vor fi compatibile Bluetooth 4.0, vor beneficia de mufa stereo de 3.5 mm, Wi-Fi 802.11 b/g/nn si DLNA pentru streaming media wireless de pe telefon pe TV.


Desire 500 ruleaza Android 4.2 si noua interfata Sense 5. Ecranul de widget-uri este inca disponibil, dar este adus in plan secund prin includerea in primul ecran a functiei Blinkfeed, un agregator de stiri asemenea lui Flipboard si care ofera informatii relevante din mai multe canale – stiri, social media, calendar, mail. Video Highlights creaza montaje de 30 de secunde din imaginile din galaerii, adaugand tranzitii si muzica de fundal.


HTC Desire 500 va ajunge la operatorii si retailerii principali din Romania incepand cu aceasta luna, in culorile negru (Lacquer Black) si albastru (Glacier Blue).Nu a fost dezvaluit un pret oficial, dar el se vinde in Taiwan cu aproximativ 400 de dolari (sursa: connect.ro).



Smartphone
Ecran/Rezolutie
Conectivitate
Procesor
OS
Pret / Lei
Camera
Nokia Lumina 520
4"
Wifi/2G/3G
1 GHz
MWP 8
640
5Mpx
LG Optimus L5 II E460
4"
Wifi / 3G
1 GHz
Android 4.1.2
650
5Mpx
Huawei Ascend Y300
4"
Wifi/3G
1 GHz
Android
650
5Mpx
Huawei Ascend G510
4.5"
Wifi/3G
1.2 GHz
Android 4.1
797
5Mpx
Sony Xperia L
4.3"
Wifi/2G/3G
1 GHz
Android 4.1.2
1100
8Mpx
HTC One S Z520e
4.3"/540x960
Wifi/3G
1.7 GHz
Android 4.0
1300
8Mpx
Moto X
4.7/720x1280
Wifi/3G/4G
1.7 GHz
Android 4.2
2000
10Mpx
LG Optimus G E975
4.7"
Wifi/3G/4G
1.5 GHz
Android 4.1.2
2200
13Mpx
Samsung Galaxy S4
5"/1920x1080
Wifi/3G/4G
1.9 GHz
Android 4.2.2
2200
13Mpx
iPhone 5
4"/1136x640
Wifi/3G/4G
1.3 Ghz
IOS 6
2400
8Mpx
Nokia Lumina 1020
4.5"/1920x1080
Wifi/3G/4G
1.5 GHz
MWP 8
2700
41Mpx
HTC One
4.7"/1280x768
Wifi/3G/4G
1.7 GHz
Android 4.2.2
2700
4Mpx
Prestigio MultiPhone 5300 Duo
5.3/480x854
Wifi/3G
1.2 GHz
Android 4.1
1100
8Mpx
Asus Google Nexus 7 2
7"/1200x1920
Wifi/2G/3G/4G
1.5 GHz
Android 4.3
1000
5Mpx
HTC Desire 500
4.3"
Wifi/2G/3G
1.2 GHz
Android 4.2
1300
8Mpx




Moto X

 Cu noul smartphone Moto X, Google reuşeşte o dublă premieră: primul terminal dezvoltat şi supervizat în întregime, la care se adaugă şi detaliul patriotic, adică asamblarea în SUA. În august 2011, Google anunţa preluarea Motorola Mobility pentru 12,5 miliarde de dolari.

Pentru “X” (un posibili nou brand în portofoliul Google, după Nexus), producătorii au optat pentru o arhitectură hardware bazată pe Qualcomm Snapdragon S4 Pro şi procesoar dual-core 1.7GHz Krait, cu unitate de procesare grafică Adreno 320 GPU. Memoria RAM este de 2GB, capacitatea de stocare internă este de 16/32GB, dar fără opţiunea unui card microSD.

Moto X


Camera foto oferă o rezoluţie de 10MP, cu tehnologie ClearPixel iar pe partea video, rezoluţia este fullHD la 30cps. Bateria este de 2200mAh.




Platforma software este Android 4.2 (Jelly Bean) iar display-ul de 4.7 inci are o rezoluţie 720 x 1280 pixeli, ( densitate a pixelilor de 312), cu protecţie Corning Gorilla Glass.

O trăsătură interesantă este şi aceea a posibilităţii de a schimba carcasele, atât faţă cât şi verso (producătorul oferă 18 variante cromatice).
Ce ar trebui să ştii, în primul rând? Ei bine, vor fi disponibile 504 modele. Exact, 504 modele de Moto X pe care utilizatorii şi le pot crea pe un site dedicat. Asta cel puţin în SUA. În plus, Motorola se asigură că telefonul este perfect pentru toată lumea, iar ecranul a fost unul dintre subiectele de dezbatere intensă. S-a ajuns la cel din prezent, 4,7 inci HD şi AMOLED. AMOLED pentru că Motorola face telefonul să pornească imediat ce l-ai întors, dacă îl ţii cu faţa în jos pe masă, iar AMOLED este o tehnologie mai bună.

Citeste mai mult: adev.ro/mqw6s2
Ei bine, vor fi disponibile 504 modele. Exact, 504 modele de Moto X pe care utilizatorii şi le pot crea pe un site dedicat. Asta cel puţin în SUA. În plus, Motorola se asigură că telefonul este perfect pentru toată lumea, iar ecranul a fost unul dintre subiectele de dezbatere intensă. S-a ajuns la cel din prezent, 4,7 inci HD şi AMOLED. AMOLED pentru că Motorola face telefonul să pornească imediat ce l-ai întors, dacă îl ţii cu faţa în jos pe masă, iar AMOLED es

Citeste mai mult: adev.ro/mqw6s2
Ei bine, vor fi disponibile 504 modele. Exact, 504 modele de Moto X pe care utilizatorii şi le pot crea pe un site dedicat. Asta cel puţin în SUA. În plus, Motorola se asigură că telefonul este perfect pentru toată lumea, iar ecranul a fost unul dintre subiectele de dezbatere intensă. S-a ajuns la cel din prezent, 4,7 inci HD şi AMOLED. AMOLED pentru că Motorola face telefonul să pornească imediat ce l-ai întors, dacă îl ţii cu faţa în jos pe masă, iar AMOLED este o tehnologie mai bună.

Citeste mai mult: adev.ro/mqw6s2
Ce ar trebui să ştii, în primul rând? Ei bine, vor fi disponibile 504 modele. Exact, 504 modele de Moto X pe care utilizatorii şi le pot crea pe un site dedicat. Asta cel puţin în SUA. În plus, Motorola se asigură că telefonul este perfect pentru toată lumea, iar ecranul a fost unul dintre subiectele de dezbatere intensă. S-a ajuns la cel din prezent, 4,7 inci HD şi AMOLED. AMOLED pentru că Motorola face telefonul să pornească imediat ce l-ai întors, dacă îl ţii cu faţa în jos pe masă, iar AMOLED este o tehnologie mai bună.

Citeste mai mult: adev.ro/mqw6s2

Terminalul funcţionează în reţele HSDPA/LTE (4G), cu nano SIM.

Puteti vedea aici un top Smartphone cu ecran de la 4 inch. 

SmartphoneEcran/RezolutieConectivitateProcesorOSPret / Lei Camera
LG Optimus L5 II E4604"Wifi / 3G1 GHzAndroid 4.1.26505Mpx
LG Optimus G E9754.7"Wifi/3G/4G1.5 GHzAndroid 4.1.2220013Mpx
Nokia Lumina 5204"Wifi/2G/3G1 GHzMWP 86405Mpx
Sony Xperia L4.3"Wifi/2G/3G1 GHzAndroid 4.1.211008Mpx
Huawei Ascend G5104.5"Wifi/3G1.2 GHzAndroid 4.17975Mpx
Huawei Ascend Y3004"Wifi/3G1 GHzAndroid6505Mpx
HTC One S Z520e4.3"/540x960Wifi/3G1.7 GHzAndroid 4.013008Mpx
Moto X4.7/720x1280Wifi/3G/4G1.7 GHzAndroid 4.2200010Mpx
iPhone 54"/1136x640Wifi/3G/4G1.3 GhzIOS 624008Mpx
Samsung Galaxy S45"/1920x1080Wifi/3G/4G1.9 GHzAndroid 4.2.2220013Mpx
Nokia Lumina 10204.5"/1920x1080Wifi/3G/4G1.5 GHzMWP 8270041Mpx
HTC One 4.7"/1280x768Wifi/3G/4G1.7 GHzAndroid 4.2.227004Mpx







 

Huawei Ascend Y300


In fata, scutul din sticla minerala rezistent la zgarieturi, dar fara prea mari pretentii la capitolul tratament anti-reflexie, ascunde un ecran IPS cu unghiuri de vizibilitate rezonabile, respectiv contrast si paleta de culori multumitoare. Imaginile redate la rezolutie 480x800 pixeli prezinta un nivel de claritate suficient de bun pentru a nu incomoda lectura paginilor web, chiar daca matricea LCD cu densitate 233ppi nu se poate compara cu solutiile implementate de unele modele smartphone din gama high-end. Interfata touch capacitiva este precisa si isi pastreaza sensibilitatea chiar daca suprafata ecranului este murdarita cu urme de transpiratie sau grasime. Pentru a nu rapi din spatiul disponibil pentru afisare, ecranul este asistat cu 3 butoane capacitive pozitionate in partea inferioara.
Mai multe info +Dan Dragomir




Puteti vedea aici un top Smartphone cu ecran de 4 inch. 


SmartphoneEcranConectivitateProcesorOSPret / Lei Camera
LG Optimus L5 II E4604"Wifi / 3G1 GHzAndroid 4.1.28005Mpx
LG Optimus G E9754.7"Wifi/3G/4G1.5 GHzAndroid 4.1.2220013Mpx
Nokia Lumina 5204"Wifi/2G/3G1 GHzMWP 88005Mpx
Sony Xperia L4.3"Wifi/2G/3g1 GHzAndroid 4.1.211008Mpx
Huawei Ascend G5104.5"Wifi/3G1.2 GHzAndroid 4.17975Mpx
Huawei Ascend Y3004"Wifi/3G1 GHzAndroid6505Mpx








Upgrade-ul de la vechiul LG Optimus L5 a înseamnat un design mai bun, un procesor mai rapid, o baterie mai rezistentă şi o cameră mai performantă. Designul premium, finisajele elegante şi arhitectura atent gândită ale noului smartphone de la LG atrag privirile tuturor.

Cu ajutorul procesorului său de 1Ghz şi a ecranului de 4 inch, navigarea pe internet devine o plăcere. Camera foto de 5 Mpx care vine cu flash LED şi autofocus are încorporată şi opţiunea de înregistrare video astfel încât tu să nu mai ratezi nici un moment important.

Utilizez acest telefon in reteaua Orange si se descurca foarte bine, singurul lucru dificil este atunci cand folosesti tastatura care este cam inghesuita.

Functional, accesibil, performant, atragator si foarte bun pentru cei care vor sa-si cumpere primul smartphone, LP Optimus L5 II are functia NFC, poti face plati online cu el, poti scana coduri de bare, senzori GPS, poate fi folosit pentru navigatie, hotspot si are functia power-saving.

vineri, 26 iulie 2013

Open source - Scilab

Scilab - introducere 


Scilab este un mediu de dezvoltare extrem de usor de utilizat. Poate fi utilizat pentru calcul si analiza statistica, permite manipularea matricelor, vizualizarea functiilor, implementarea algoritmilor, crearea de interfete grafice(GUI) si poate interactiona cu alte aplicatii. Matematica devine extrem de usoara cu aceasta aplicatie. Nu credeam sa ajung sa invat matematica, pana cand am descoperot programul Scilab, caruia ii datorez faptul ca am reusit sa ma descurc cu matricele.

Scilab - interfata grafica (GUI) I


Scilab [Sailab] este un mediu de dezvoltare multiplatformă (Windows, Linux, MacOS) pentru calcul si analiza statistica care permite manipularea matricelor, vizualizarea functiilor, implementarea algoritmilor, crearea de interfete și poate interactiona cu alte aplicatii.

In acest tutorial v-om explica pas cu pas cum sa creem o interfata grafica. Avantajul utilizarii interfetelor grafice este acela ca face lucrul pe calculator mult mai intuitiv si usureaza procesul de invatare.

Functia care creaza interfata grafica in Scilab este:

h = uicontrol(PropertyName,PropertyValue,...)
h = uicontrol(parent,PropertyName,PropertyValue,...)
h = uicontrol(uich)
 
Pentru a afisa o fereastra:

1:  fereastra = figure();  
2:  // se deschide o fereastra  
3:  h=uicontrol(fereastra, "style", "listbox", "position",[10 10 150 160]);  
4:  // crearea unei liste  
5:  set(h, "string", "item1|item2|1tem3");  
6:  //umplerea listei  
7:  set(h, "value", [1 3]);  
8:  //close(fereastra);  
 
În partea dreapta este fereastra
rezultata dupa executarea codului de mai sus. 
















Scilab - determinarea anului bisect


Scilab [sailab] este un mediu de dezvoltare multiplatformă (Windows,
Linux, MacOS) pentru calcul si analiză statistica care permite manipularea matricelor, vizualizarea funcțiilor, implementarea algoritmilor, crearea interfetelor si poate interactiona cu alte aplicații.
Fiind un program cu sursă deschisa dezvoltarea de functii si librării este la indemana oricarui utilizator.
În urmatoarele rânduri v-om prezenta un program care determina daca un an este bisect sau nu.
1:  a = input("Introduce-ti anul: ")  
2:  if (modulo(a,4)==0) then  
3:    if(modulo(a, 100)==0) then  
4:      if(modulo(a, 400)==0) then  
5:        disp("este bisect")  
6:      else  
7:        disp("nu este bisect")  
8:      end  
9:    else  
10:      disp("este bisect")  
11:    end  
12:  else  
13:    disp("este bisect")  
14:  end  
Alte articole despre Scilab:
Programul Scilab poate fi comandat din:
Scilab este un mediu de dezvoltare pentru calcul si analiza statistica care permite manipularea matricelor si vizualizarea functiilor, implementarea algoritmilor, crearea de interfete si poate interactiona cu alte aplicatii.
Functiile sunt colectii de comenzi executate in interiorul acestora, astfel variabilele functiei sunt izolate de  variabilele declarate in afara functiilor.
De exemplu daca dorim adunarea a doua numere, putem foarte usor declara aceasta functie:
-----------
Startup execution:
  loading initial environment
-->function add=adunare(a,b)
-->add=a+b
-->endfunction
-->adunare(3,7)
 ans  =
    10.
 ---------------------------------
Functia declarata in consola o putem folosi prin denumire si atribuire a doua argumente. Acest exemplu a creat o functie simpla, dar modelul este acelasi ca si in cazul functiilor complexe.
-------------------------------
-->function add=adunare(a,b)
-->add=a+b
-->endfunction
----------------------------------------
Aceasta functie poate fi scrisa si in editorul SciNote si incarcata direct din editor in consola si apoi utilizarea functiei se face la fel ca si la declararea din consola. Acest aspect face ca Scilab sa poata fi extins cu alte functii.
Alte articole despre Scilab:
Programul Scilab poate fi comandat din:

Scilab - monitorizarea tensiunii arteriale


Scilab este un program de calcul matematic și emulare grafica care poate fi extins cu functii scrise de utilizatori. Dupa cum am aratat in postarea anterioara este un program foarte usor de invatat si utilizat.
Scilab este un mediu de dezvoltare pentru calcul și analiză statistică care permite manipularea matricelor, vizualizarea functiilor, implementarea algoritmilor, crearea de interfețe și poate interactiona cu alte aplicatii.
Vă propun în rândurile următoare să încercăm monitorizarea tensiunii arteriale și să realizam un grafic cu valorile pe care le-am obținut. Să presupunem că avem următoarele valori, stocate in matricea inregistrari.
inregistrari  =
    100.5    116.    88. 
    96.      122.    71. 
    96.      116.    62. 
    96.6     111.    76. 
    96.1     118.    68. 
    95.      114.    71. 
Pentru a putea utiliza aceste valori scriem urmatorul cod:
------------------------------------------------------------------------------------------------
//sanatate
inregistrari=[100.5 116 88; 96 122 71; 96 116 62; 96.6 111 76; 96.1 118 68; 95 114 71]
greutate=inregistrari(:,1)
syst=inregistrari(:,2)
dyst=inregistrari(:,3)
plot(greutate,syst, greutate, dyst)
xlabel("Greutatea in kg")
ylabel("Tensiunea SYS/mmHg, DIA/mmHg")
title('Greutate vs Tensiunea SYSmmHg, DIA/mmHg')
//xgrid(1)
legend("SYS/mmHg", "DIA/mmHg")
----------------------------------------------------------------------------------------------------
Graficul care este afisat mai jos este rezultatul executiei codului de mai sus:
Programul Scilab și manualul de utilizare poate fi comandat de aici . Scilab are versiuni si pentru sistemele de operare linux, ex: UBUNTU care poate fi comandat impreuna cu un scurt manual de utilizare aici .

Scilab 5.4.1 - calcul matematic si editor grafice

Acest tutorial se doreste un material care să vă ghideze primi pași în utilizarea Scilab, manualul complet și softul Scilab pot fi comandate de aici.
Scilab este un program de calcul matematic si emulare grafică a rezultatelor obtinute care poate fi extins prin adaugarea de module aferente si altor domenii ale stiintei (fizica, inginerie, etc.).
Urmarind invatarea matematicii si fizicii, Scilab este de un real ajutor celor ce doresc utilizarea sa in rezolvarea problemelor de matematica. Oferind un mediu de lucru simplu si eficient acesta se adreseaza atât elevilor incepand cu clasa a V si pana la cele mai avansate medii academice.
Codul ce urmeaza:
x = 1:10;
y = log(x);
plot (x,y)
Va afisa urmatorul grafic:
În editorul Scinote codul scris arată :

sâmbătă, 6 iulie 2013

Open source - Python și Pygame


Python si Pygame - creați jocuri


Python este un limbaj de programare dinamic multi-paradigmă, creat în 1989 de olandezul Guido van Rossum. Van Rossum continuă și în ziua de astăzi a fi un lider al comunității de dezvoltatori care continuă să perfecționeze limbajul Python și implementarea de bază a acestuia, CPython, scrisă în C. Python este folosit de companii și organizații ca NASA, Google, Yahoo!, utilizat ca limbaj de scriere în multe aplicații, inclusiv aplicații lider în sfera graficii 3D. Multe sisteme bazate pe Unix, inclusiv Linux, BSD și Mac OS X includ din start interpretorul Cpython.

Dar Python este puternic tipat, adică interpretatorul nu permite operații de tip cast ca în C, deși sunt unele excepții logice ca lucrul cu numere întregi și numere float.
Pygame este un modul multi platforma al python, construit pentru realizarea jocurilor care include si o librarie sonora pentru a fi utilizata cu limbajul Python. Libraria Pygame a fost scrisa de pete Shinners și a fost lansata sub licență free.
Descarcare și instalare Python
Software-ul Python poate fi descarcat de pe site-ul oficial http://www.python.org .

Dar Python este puternic tipat, adică interpretatorul nu permite operații de tip cast ca în C, deși sunt unele excepții logice ca lucrul cu numere întregi și numere float.

Python este un limbaj de programare dinamic multi-paradigmă, creat în 1989 de olandezul Guido van Rossum. Van Rossum continuă și în ziua de astăzi a fi un lider al comunității de dezvoltatori care continuă să perfecționeze limbajul Python și implementarea de bază a acestuia, CPython, scrisă în C. Python este folosit de companii și organizații ca NASA, Google, Yahoo!, utilizat ca limbaj de scriere în multe aplicații, inclusiv aplicații lider în sfera graficii 3D. Multe sisteme bazate pe Unix, inclusiv Linux, BSD și Mac OS X includ din start interpretorul Cpython.
Limbajele dinamice sunt deseori caracterizate prin tipizare dinamică, sunt interpretate, au management de memorie automatizat (garbage collecting) și au un nivel înalt de abstractizare. Tipizarea dinamică permite declararea variabilelor fară declararea tipului variabilei, interpretatorul determinînd tipul variabilei după conținutul sau operațiile efectuate.
Dar Python este puternic tipat, adică interpretatorul nu permite operații de tip cast ca în C, deși sunt unele excepții logice ca lucrul cu numere întregi și numere float.
Python este un limbaj multi-paradigmă, concentrându-se asupra programării imperative, orientate pe obiecte și funcționale, ceea ce permite o flexibilitate mai înaltă în scrierea aplicațiilor. Din punctul de vedere al sintaxei, Python are un număr de contrucții și cuvinte cheie cunoscute oricărui programator, dar prezintă și un concept unic: nivelul de indentare are semnificație sintactică. Blocurile de cod sunt delimitate prin simplă indentare. În C un astfel de blocuri sunt deseori desemnte prin paranteze acolade, {<cod>}, dar în Python nu este nevoie de astfel de construcții. Nivelele de indentare poartă același rol. Această importanță a indentării este foarte suprinzătoare pentru mulți noi utilizatori ai limbajului Python, chiar dacă sunt programatori cu experiență. Dar o astfel de utilizare a indentării permite codului să fie mai ușor de citit și mai compact. Programatorii cu experiență oricum indentează codul sursă, oricare ar fi limbajul, fiindcă aceasta permite a structura codul sursă și al face mai citeț și mai pe înțelese, iar Python face din această deprindere folositoare o cerință strictă. Un exemplu analogic ar fi Java, care forțează programatorii să delimiteze clasele în fișiere aparte, din motive de organizare și sporire a eficienței de scriere a softului în echipe.
Python programare
Pe un sistem Ubuntu 12.10 deschideti un terminal si introduceti urmatoarea comanda:
----------------------------------------------------------------------------
#python
#Python 2.7.3 (default, Sep 26 2012, 21:53:58)
#[GCC 4.7.2] on linux2
# Type "help", "copyright", "credits" or "licence" for more information.
# >>>
# pt. a iesi din python executati comanda Ctrl+D si intrati din nou in terminal
# in terminal rulati comanda $ mkdir mystuff
# $ cd mystuff
# folositi editorul de texte pentru a edita fila test.txt
# $ ls
# test.txt
# $
# tot ce va trebuie este programul gedit pt. a scrie programe, python pt. a le
# rula
print "Salut eu sunt un program Python"
print "Sunt Mihai C. si va scriu acest tutorial pt Python"
print " Data: 25.05.2013"
print " pt a rula programul rulati python ex1.py"
-----------------------------------------------------------------------------

Python joc de antrenarea memoriei


În jocul de pazzle, pe care îl vom prezenta in urmatoarele pagini, ne vom folosi de niste patrațele albe care vor acoperi un numar de doua imagini asemanătoare. Jucătorul poate apasa două patrațele pentru a vedea ce este dedesupt, daca imaginile sunt la fel acestea răman descoperite. Jucatorul câștigă atunci când toate imaginile sunt descoperite. Pentru a oferi un avantaj jucătorului la inceputul jocului imaginile vor fi afisate pentru scurt timp.

Inainte de a purcede la treabă, vom explica un concept care va fi folosit in aproape toate jocurile. Ciclurile for imbricate și constă in folosirea unui ciclu for in corpul altui ciclu for, de exemplu in shell-ul Python:
Python 2.7.3 (default, Aug 1 2012, 05:16:07)
[GCC 4.6.3] on linux2
Type "copyright", "credits" or "license()" for more information.
==== No Subprocess ====
>>> for x in [0, 1, 2, 3, 4]:
for y in ['a', 'b', 'c']:
print(x, y)

(0, 'a')
(0, 'b')
(0, 'c')
(1, 'a')
(1, 'b')
(1, 'c')
(2, 'a')
(2, 'b')
(2, 'c')
(3, 'a')
(3, 'b')
(3, 'c')
(4, 'a')
(4, 'b')
(4, 'c')
>>>

Ciclurile for imbricate sunt utilizate pentru a combina liste. Daca schimbam ordinea ciclurilor for, rezultatul este urmatorul:

>>> for y in ['a', 'b', 'c']:
for x in [0, 1, 2, 3, 4]:
print(x, y)

(0, 'a')
(1, 'a')
(2, 'a')
(3, 'a')
(4, 'a')
(0, 'b')
(1, 'b')
(2, 'b')
(3, 'b')
(4, 'b')
(0, 'c')
(1, 'c')
(2, 'c')
(3, 'c')
(4, 'c')
>>>

În jocul nostru, avem nevoie de ciclurile for pentru a itera pe coordonatele X și Y ale ferestrei pentru a ne asigura ca am epuizat toate combinatiile.


miercuri, 3 iulie 2013

Ubuntu 13.04 un sistem de operare complet




UBUNTU 13.04 RARING RINGTAIL

Ubuntu 13.04 este o versiune intermediară între 12.04 (versiune care se bucură de suport tehnic timp de 5 ani, și versiunea Ubuntu 14.04 care va marca debutul convergenței intre PC-uri, tablete și telefoane mobile.

Versiunea pe care o putem oferi pe CD pentru instalare oferă o interfață Unity actualizată. Aceasta oferă acum animații și ferestre de previzualizare noi, meniuri noi pentru sincronizare cu Ubuntu One și controlul modulului Bluetooth, comutare rapidă între aplicații deschise cu ajutorul Quicklists sau a derularii deasupra aplicației dorite și controlul mai bun asupra integrării social media.





Ubuntu 13.04 vine cu un pachet software care îl face capabil să concureze cu Windows ca mediu de lucru office cât și pentru utilizare particulară. Oferă și un centru de software(Ubuntu Software Center) în care aplicațiile pot fi descarcate și instalate asemănător Android.
Pentru comenzi CD imagine iso de instalare trimiteți adresa dvs. la mhcrnl@gmail.com

duminică, 30 iunie 2013

NimbleX sistem de operare românesc bazat pe linux






NimbleX – distribuție Linux romanească




NimbleX poate fi descarcat de la adresa http://www.nimblex.net/ si are 400MB putând rula de pe CD sau USB.

Pentru distributie pe CD inscriptionată cu imaginea iso vă puteți adresa la tel: 0722.27.07.96 sau la e-mail: mhcrnl@gmail.com .









luni, 6 mai 2013

Ajax - discutia cu serverul

Acum trebuie sa invatam sa utilizam proprietatile si metodele obiectului XMLHTTPRequest pentru a-i permite sa trimita cereri catre server si sa primeasca date de la acesta.

Dupa cum ati vazut in tutorialul trecut:

Crearea obiectului XMLHTTPRequest este destul de simplu, urmeaza sa creem si trimite cereri catre server si analiza raspunsurile primite.

Sa trecem direct la lucru si sa creem un obiect XMLHTTPRequest si apoi o functie JavaScript pentru a trimite o cerere asincrona:
-------------------------------------------
function getXMLHTTPRequest(){
var req = false;
try {
req = new XMLHTTPRequest();
}
catch(err1)
}
try {
req = new ActiveXObject("Msxml2.XMLHTTP");
}
catch(err2)
{
try {
req = new ActiveXObject("Microsoft.XMLHTTP");
}
catch(err3)
{
req = false;
}
}
}
return req;
}
var myRequest = getXMLHTTPRequest();
function callAjax() {
//declararea unei variabile care sa pastreze informatiile transmise catre server
var lastname='Smith';
//construirea adresei URL a scriptului de server pe care dorim sa-l apelam
var url = "myserverscript.php?surname=" + lastname;
//cerem obiectului nostru XMLHTTPRequest sa deschida o conexiune la server
myRequet.open("GET", url, true);
//pregatirea unei functii responseAjax() care va rula la sosirea raspunsului
myRequest.onreadystatechange = responseAjax;
// trimiterea cererii
myRequest.sent(null);
---------------------------------------------------------------------------------------------------------------

Sa dezvoltam aplicatia sa vedem daca functioneaza. Avem nevoie de urmatoarele fisiere:

  • index.html
-----------------------------------------------------------------------------
<!DOCTYPE html>
<html>
<head>
<script type="text/javascript" src="ajaxreq.js">

</script>
</head>
<body>
<div id="myDiv"><h2>Let AJAX change this text</h2></div>
<button type="button" onclick="loadXMLDoc()">Change Content</button>
</body>
</html>
------------------------------------------------------------------------------
  • ajaxreq.js
--------------------------------------------------------------------------------
function loadXMLDoc()
{
var xmlhttp;
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","index.txt",true);
xmlhttp.send();
}
-------------------------------------------------------------------------------------
  • index.txt
----------------------------------------------------------------------------------------
Salut!
Acesta este un fisier de pe Server.
-----------------------------------------------------------------------------------------

Dupa rularea scriptului trebuie sa fie afisat mesajul din index.txt.
"+"Joe Reed

duminică, 5 mai 2013

AJAX - anatomia unei aplicatii

<!DOCTYPE html>
<html>
<head>
<script>
function loadXMLDoc()
{
var xmlhttp;
if (window.XMLHttpRequest)
  {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
  }
else
  {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
  }
xmlhttp.onreadystatechange=function()
  {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
    {
    document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
    }
  }
xmlhttp.open("GET","ajax_info.txt",true);
xmlhttp.send();
}
</script>
</head>
<body>

<div id="myDiv"><h2>Let AJAX change this text</h2></div>
<button type="button" onclick="loadXMLDoc()">Change Content</button>

</body>
</html>

Let AJAX change this text





  • Obiectul XMLHTTPRequest
- este acceptat de aproape toate browserele moderne, si este suportat de o multitudine de platforme.
Scopul obiectului XMLHTTPRequest este de a permite ca JavaScript sa formuleze cereri HHTTP si sa le trimita catre server. Aplicatiile web programate in mod traditional relizeaza de obicei astfel de cereri in mod sincron, ceea ce are ca rezultat transmiterea catre browser a unei pagini noi sau actualizate.

Utilizand insa obiectul XMLHTTPRequest puteti pune pagina sa efectueze astfel de apelari in mod asincron, in fundal, ceea ce va permite utilizarea paginii fara intreruperi cauzate de reimprospatarea browserului.

Pentru majoritatea browserelor care accepta XMLHTTPRequest ca un obiect nativ(Mozilla, Opera si restul), crearea unei instante a aecestui obiect este simpla si directa:

var request = new XMLHTTPRequest();

Pentru Microsoft Internet Explorer trebuie sa creati un obiect ActiveX:

var request = new ActiveXObject("Microsoft.XMLHTTP")



MethodDescription
open(method,url,async)Specifies the type of request, the URL, and if the request should be handled asynchronously or not.

method: the type of request: GET or POST
url: the location of the file on the server
async: true (asynchronous) or false (synchronous)
send(string)Sends the request off to the server.

string: Only used for POST requests

Metoda open()
- pregateste obiectul XMLHTTPRequest pentru a comunica cu serverul si are cel putin 2 argumente obligatorii:

  1. precizarea metodei HTTP pe care intentionati sa o utilizati GET sau POST,
  2. adresa URL de destinatie a cererii, pentru GET aceasta adresa trebuie sa fie codificata corespunzator.
Din motive de securitate, obiectului XMLHTTPRequest i se permite sa comunice doar cu adrese URL din interiorul propriului domeniu.
The url parameter of the open() method, is an address to a file on a server:
xmlhttp.open("GET","ajax_test.asp",true);
The file can be any kind of file, like .txt and .xml, or server scripting files like .asp and .php (which can perform actions on the server before sending the response back).

Metoda send()

Dupa ce ati pregatit obiectul cu metoda open(), puteti trimite cererea cu metoda send(). 

Limbajul PHP

Prima data trebuie sa raspundem la intrebarea: Ce poate face PHP?

Orice. PHP este axat în principal pe scripting de partea server-ului, deci puteți realiza cu el orice poate realiza un alt program CGI, cum ar fi colectarea datelor din forme, generarea conținutului dinamic al paginilor sau trimiterea și primirea cookies. Dar PHP poate face mult mai multe.
Sunt trei domenii principale, unde scripturile PHP sunt utilizate.
  • Scripting de partea serverului. Acesta este cel mai tradițional și de bază domeniu al PHP. Aveți nevoie de trei lucruri pentru ca aceasta să funcționeze. Analizatorul PHP (în calitate de CGI, sau modul pentru server), un server web și un navigator web. Trebuie să rulați serverul web cu o instalare PHP conectată la el. Puteți accesa ieșirile programului PHP cu navigatorul web, vizualizând pagina PHP prin server. Toate acestea pot rula pe computerul dumneavoastră de acasă, dacă doar experimentați cu programarea în PHP. Citiți secțiunea cu instrucțiuni de instalare pentru informații suplimentare.
  • Scripting în linia de comandă. Puteți să faceți un script PHP să ruleze fără un server și navigator web. Aveți nevoie doar de analizatorul PHP pentru a-l utiliza în acest mod. Acest mod de utilizare este ideal pentru script-uri executate în mod regulat cu cron (pe *nix sau Linux) sau cu Task Scheduler (pe Windows). Aceste script-uri pot fi utilizate de asemenea pentru lucrări simple de procesare a textelor. Citiți secțiunea despre Utilizarea PHP în linia de comandă pentru informații suplimentare.
  • Scrierea aplicațiilor de birou. PHP probabil că nu este cel mai potrivit limbaj pentru a crea o aplicație de birou cu o interfață grafică a utilizatorului, dar dacă cunoașteți PHP foarte bine și doriți să utilizați unele facilități avansate ale PHP în aplicații de partea clientului, puteți să utilizați PHP-GTK pentru a scrie asemenea aplicații. De asemenea aveți posibilitatea să scrieți în acest mod aplicații ce vor rula pe mai multe platforme. PHP-GTK este o extensie a PHP, care nu este disponibilă în distributivul de bază. Dacă v-a interesat PHP-GTK, vizitați » propriul său website.

sâmbătă, 4 mai 2013

Vizualizati ora exacta in diferite orase din lume - KDE

Utilizatorii desktopului KDE pot urmarii ora exacta din foarte multe orase de pe glob.

Pentru asta trebuie sa configurati ceasul digital din bara de stare, seta ora si selecta orasele pe care sa le adaugati.
Dati click-dreapta pe ceasul digital din bara de stare si alegeti Digital Clock Settings, dupa care selectati Time Zones, scrieti numele orasului pe care il cautati. In momentul cand l-ati gasit selectati casuta corespunzatoare. Urmati acelasi proces si pentru urmatoarele orase.

Pentru a incheia setarea apasati OK. Vizualizati orele din orasele selectate ducand cursorul mouse-ului deasupra ceasului din bara de stare.