Recently in Techstuff Category
Tänk om man plötsligt hittade en webbsida som visade en massa meningslösa lösryckta meningar om vad olika personer gör, tex bakar, äter etc. Vänta, det låter ju som Facebook.
Ahh, men tänk om sidan visade uppdateringar 15 år fram i tiden och du kunde påverka din framtid och få återkoppling direkt? Kom ihåg att minsta ändring kan få en massa effekter både för dig och andra.
Vad skulle du göra? Skulle du kolla? Skulle du påverka framtiden?
Hur är det då att ha en självgående dammsugare? Den största bieffekten är nog att man måste städa innan den kör så det blir faktiskt städat, eller i alla fall upplockat. Vissa ställen måste man blocka av för som alla dammsugare av denna modell så fastnar de i kablar och annat som är löst. Herr Robotniack fastnade i ett bar skosnören på sin första körning.
Är detta en ersättare för en vanlig dammsugare? Nej, men det är ett mycket bra komplement. Speciellt i ett hem där det kanske inte dammsugs så ofta som skulle behövas.
Några småsaker kan man kanske reta sig på. Den piper till när den är färdigladdad och displayen lysar alltid när den står på laddning.
Elsaker konsumerar energi. Den har ett batteri som ska laddas för att den ska kunna köra omkring och det tycker jag egentligen är mindre intressant. Mer intressant är hur mycket den dra när den INTE kör omkring. Själva laddaren verkar dra 9W konstant samt dammsugaren ytterligare 9W om den står i laddaren när den är fulladdad. På ett år blir det drygt 157 KWh vilket är ganska mycket för en produkt. Ska det verkligen vara så?
Idag har jag pysslat med att lära mig mer om JavaScript och Chrome Extensions (ett sätt att utöka webbläsarens funktionalitet). Den applikation som jag valde att skriva är en utökning som jag kallar "SWAMID Redirect". Vi som använder SUNETs olika SWAMID-tjänster visas en sida där vi ska välja vilken universitetsidentitet vi vill logga in med och efter man valt så skickas man vidare till en sida där man får göra själva inloggningen. sidan med valet visas varje gång fastän man anger att sessionen ska sparas i en vecka. Min lilla utökning kollar helt enkelt om sidan innehåller information om att man har en sparad session och "klickar" vidare webbläsaren till loginsidan. Violá, så slipper man ett extra click :)
Kanske känns meningslöst men det var främst en övning i JavaSript och att få skriva en Crome Extention. Jag fick även öva på hur paketeringen ska göras med ikoner, nycklar, uppdateringsURL med mera.
Vill du prova? Klicka på bilden för att ladda ner en installationsfil och följ instruktionerna i Chrome.
Problem? Fråga på!
Hej
Nu ska jag snart gå hem! Solen skiner ute och det känns som en ganska produktiv vecka så här långt. Normalt brukar jag ju vara ledig på fredagar men eftersom jag tänkt ta ledig under påsklovet (nästa vecka) så tänkte jag att jag fick jobba klart en leverans innan jag får ledigt.
Veckan har varit en hektisk blandning av programmering, föreläsningar och middagar ute (3 dagar på raken). Inte bra för midjemåttet. I och för sig serverade restaurangen (Husman Kök och Café) i princip rått kött till ca 100 gäster så jag åt faktiskt inte upp.
Varför började jag skriva detta just nu? Jo jag fick ett tips om OmmWriter som är en helt otroligt minimalistik textklient som skalar bort det mesta och låter en fokusera på själva skrivandet. har bara använt den några minuter men jag kommer att helt klart göra det igen. Fokus är bra! Man kan välja bakgrunder, lugn musik som plinkar på medan man skriver, alla menyer försvinner efter några sekunder och det är ett mysigt tickande för tangentbordstryck.
Här kan ni se hur det ser ut:
Gällande att åka hem förresten, trpr nog att jag ska ta och försöka jobba bort lite programmering resten av dagen så kanske man kan bli ledig tidigare imorgon.
Påsklov förresten, kanske dags att sätta upp lite kakel i köket? Det är ju bara drygt 2 år sedan vi började renovera :) Kanske lite socklar på skåpen i vardsrummet? Några hundra löpmeter lister borde också sättas upp. Jaja. Det finns så mycket man kan göra :)
Nu är Multi, mitt lilla multiplickationsträningsprogram tillgängligt för iPhone och iPad via Apple App Store (ska ni söka i telefonen så sök på Parnes) Det var så skoj när båda min barn (5 och 10) sitter och övar på att räkna via mitt lilla program. Sonen, Oliver är bara 5 så man få hjälpa honom "en aning" men han tycker det är skoj++!
Förresten, mitt personliga rekord är 48.21. Det kan ni väl slå?
En reflektion på namnet. Multi är väl kort och kärnfullt MEN det är ju inte precis något unikt namn så det blir massor med träffar i App Store om man söker på det!
Applikationen är för övrigt främst utvecklad för att lära sig iOS-programmering och prova på hur hela publiceringsprocessen går till hos Apple (jämfört med t.ex. Google och Android).
Uppdatering: Applikationen är nu publicerad under namnet Multi.
Det här med att kunna multiplikationstabellen är ju lite skoj så igår tog jag och började knåpa på en multiplikationsträningsapplikation (säg det snabbt 5 gånger ;)) för barn, kallad Mult. Namnet är för övrigt stulet från www.mult.se men det är ju i ett gott syfte, eller hur?
Efter ca 15h hackande så funkar appen ganska bra och jag har fått öva en hel del på minnesallokering (retain, autorelease, release med mera) , hur man får UILabels att ta emot "klick", objektorientering i Objective-C (klasser, delegates, properties etc.), Interface Builder samt en rejäl dos XCode-hantering. Skoj även om det är en hel del konstiga saker som uppkommer ibland och man får konstiga program så är svåra att debugga om man råkar implementera fel metoder.
Fick även leka lite med Photoshop för att försöka få till något som liknar en iPhone-icon.
Så här ser det ut just nu. Det som saknas är en highscore-lista!
Någon som vill ha en Mult-app? :)
Ps. Det är mer beroendeframkallande än man kan tro ;)
Uppdatering: Applikationen är nu publicerad under namnet Multi.
Mjukvara, dator och en 3d-kamera för 1300:-. Coolt!
Oliver tyckte vi skulle ha ett nytt husdjur så det blev en Skorpion! Tada!
Det är kul att leka med Kinect via ofxKinect! MAGI!
På förfrågan från en köpsugen Luleit i exil så kommer här en första kort-kort minirecension av min nya TV, en Samsung UE55C7705.
Stor: Första intrycket är att den är STOR, klart större än jag hade tänkt mig innan jag packade upp den. De där 5" extra mot en 50" gör skillnad. 55" == 138cm på diagonalen.
Stillbild: Här är jag MYCKET imponerad av bilden och har man rätt material så så blir det närmast perfekt. En nackdel med bra bild är dock att saker som skärpedjup i bilden plötsligt blir viktigt för att man ser tydligare om det är inte är skärpa i hela bilden. Något man inte lika enkelt gör på en mindre TV eller en med lägre upplösning.
Rörlig bild och eftersläpning: Detta är något som tyvärr plågar alla LEDtv. I och för sig konstigt då en datormonitor som är flera år gammal har mindre av det problemet. Det beror nog på alla konstiga extra filter som TV-apparaterna har. Dock har denna Samsung en hel del rattar att skruva på och det är på gränsen till för många. Jag har spenderat mycket tid på att ratta och jag har definitivt inte rattat färdigt. Det är dock synd att dessa TVapparater inte kommer med bättre kalibrering från början. Har dock fått till en variant som känns mycket bra, en kombination av färg, eftersläpning och skärpa. Dock varierar det en hel del mellan olika materialkällor. Jag göra självklart alla dessa tester med 1080p material i hög bandbredd. Detta är dock väldigt mycket en vanesak eftersom det helt enkelt är mer detaljer i bilden så man får data in i huvudet så att säga.
Ljud: TVn har ett par sunkiga högtalare inbyggda och de duger för att titta på TV med men inte mycket mer.
Ljud-genom: Eftersom TVn har ett antal utgångar inklusive TOSLINK så hade jag tänkt att mediespelaren skulle få skicka ljud digitalt till TVn tillsammans med video över HDMI och TVn sedan skulle skicka det direkt rakt igenom utan att röra det till min förstärkare som är av det äldre slaget och uppfanns innan HDMI. Men nej, det gick inte utan TVn avkodar signalen och skickar sedan bara 2-kanals PCM till förstärkaren. Återkommer till detta längre ner gällande att hacka TVn.
Ingångar: TVn har fler ingångar än man kan önska sig (i alla fall vad jag har behov av just nu). Jag använder för närvarande 1*HDMI (PS3), Ethernet (nät), 2*USB (PVR och "övrigt för hackande"), antenn in och TOSLINK för ljud ut. Kommer även att koppla in en Scart senare från min gamla DVD-spelare (Pioneer 717 från stenåldern). TVn har dock totalt 4 HDMI plus ett gäng övriga. I princip alla ingånger sker via adaptrar eftersom TVn är så tunn och om den ska hänga på väggen så får normala kontakter inte plats. Detta är dock inget problem men jag rekommenderar att man reder ut alla kablar innan man hänger upp.
Fot: TVn levereras med en metalisk fot som man skruvar fast på baksidan av TVn. Dock är tyngdpunkten så högt upp och det blir lite oroväckande svajigt. Att montera fast den bättre är nog att rekommendera.
Menysystem: Menysystemet är mycket lättanvänt och intuitivt men man kan alltid önska sig mer. T.ex. att man skulle kunna kontrollera fler olika bildrelaterade funktioner på en gång utan att behöva hoppa in/ut ur undermenyer.
Fjärrkontroll: Den IR-baserade som följer med är enkel att använda och den har bakgrundsbelysning men den använder jag i princip aldrig då jag istället använder iPhone-klienten som pratar IP med TVn och de hittar varandra via DNLP vilket är något som tilltalar en nörd som mig. Återkommer till DNLA....
PVR: TVn har en inbyggd inspelarfunktion (Personal Video Recorder, PVR) vilket innebär att man kan stoppa in ett USBminne i TVn och sedan kan man pausa livesändingar. Funkar klockrent!! Imponerande!
3D: Det följer med ett par 3D-glasögon och jag har testa lite men jag måste erkänna att jag inte riktigt fått det att funka. Försökte att spela lite PS3-spel i 3D men fick inte till det. Tydligen så finns det en massa avarter på hur man ska visa upp signalen. Ska testa mer och får återkomma senare.
Mediespelare: TVn har en inbyggd mediespelare men tyvärr så gör begränsningar i DNLA att TVn inte kan spela lika mycket via nätet som från USBminne tyvärr. SUCK skulle man också kunna uttrycka det som. Standards är till för att försvåra eller något :-/
Utseende: TV är väldigt snygg tycker och den är väldigt tunn. Inte för att det syns när man tittar på den framifrån men ändå :) Dock har den en liten relief i plast runt skärmen och kanten på denna glänser lite från bilden. Lite störande ibland.
Sidobelysning: Detta är en sidobelyst LCD-TV och när man har sorgkant på bilden (letterbox) så ser man sidobelysningen i hörnen och på mitten där nere. Detta är ganska störande och jag funderar på att fixa bort detta med svart tyg. Detta är ju något man inte får på en plasma. Jag mailade med Samsung om detta idag och fick lite av goddag yxskaft svar från dem där de bara skrev att, ja de kan se samma sak på deras exemplar. Hmm.
Elförbrukning: Mina tester visar att den ligger nästen konstant runt 150W. TVn har en inbyggd fin mätare som ska visa förbrukningen och även om den varierar så varierar det inte på mätaren utanför. TVn har också en del Eko-funktioner men dessa har jag inte provat mer än några sekunder då bilden direkt blev för blaskig för min smak. Mest gimmick alltså!
DNLA: Interfacet på TVn möjliggöra att man kan styra den på olika sätt och det är via DNLA som iPhone-fjärren styr TVn. Jag ska kolla runt lite mer vad man kan göra här men ett första hack är att kunna visa info inkommande telefonsamtal på TVn. Här är mer info och nedan en bild på hur det skulle kunna se ut live (i detta fall för ett SMS).
Hacka TVn: TVn kör en Arm-processor och på den snurrar en Linux (såklart) och här kommer nu det intressanta in. Eftersom alla OS går att knäcka så pågår den vanliga katt och råtta leken med Samsung också. De släpper nya firmware för att täppa igen hål så att man inte ska kunna hacka TVn. Varför vill man då hacka den, förutom "för att man kan"? Jo för att kunna lägga in en egen DTS-avkodar (se ovan gällande ljudavkodning), montera diskar via NFS eller Samba så att den kan spela fler filformat än via DNLA plus lägga in bättre styrningsfunktioner i TVn.
Här var jag dock lite för snabb så jag uppdatera till senaste firmware direkt jag packade upp TVn utan att riktigt tänka mig för (hade inte insett hur man kunde hacka den) och jag har inte fått det senaste hacket att funkar. Detta hål är lite skrämmande faktiskt då det ger en nedladdad app möjlighet att glatt skriva rakt ner i filsystemet från JavaScript. Jag TROR dock att detta bara går i developer mode (som man slår på genom att skapa en användare på TVn som heter develop ;)). I alla fall så ska detta ge en möjlighet att lägga in lite bootscript som i sin tur ger en telnetd för vidare hack. Funkade inte för mig på första försöket klocka 3 på morgon i söndags men jag ska testa lite mer. En annan funktion som jag skulle vilja försöka lägga in är att den ska skicka ljuddata rakt ut på TOSLINK men jag är lite osäker på om det går att få till. Skoj är dock att det finns en ganska stor ljysskygg grupp som hackar appar för denna platform. Sådant gillar jag :)
Garanti: Samsung har väldigt trevliga garantivillkor där de kommer hem och lagar TVn i hemmet om man bor i storstäderna och annars så är det hämtservice på andra orter. Plus att de har 100% pixelgaranti.
Övrigt: Ja, vad mer finns det att säga om denna. Jag köpte min på Expert Online eftersom de var bland de billigaste och de gav mig 5% rabatt via en COOP-kupong. Igår släppte de även julvillkoren där de ger gratis frakt samt prisgaranti fram till efter nyår. Ps. Jag har mailat dem och frågat om jag kan få samma villkort men de har inte svarat ännu ;) Ska stressa dem imorgon.
Sedan kan det vara värt att kolla runt vad som gäller på olika ställen gällande tillbehör. Såg t.ex. att ElGiganten skickade med extra glasögon och några 3D-blueray-filmer medan Fyndbörsen skickade med ett väggstativ (dock bara värde hos dem ca 300:- så inte å mycket att tjafsa om).
Ps. Det kanske inte blev så kort ändå ;)
Köpte en ny TV i veckan, en Samsung UE55C7705 och självklart så sitter det ju en dator i den och den har Internet-koppning så då måste man ju se vad mer man kan göra med den än att bara titta på TV på den eller hur?
Det finns två spår, det ena är att hacka operativsystemet så att man kan installera en massa extra funktioner och det andra är att bara använda de öppna protokoll som är öppna på TVn.
Hacka operativsystemet: Satt uppe i natt till ca 3.30 och försökte få in en telnet demon på den men det gick inte så bra för jag har för nytt firmware (känner igen en viss parallell till detta med min PS3a som jag köpte tidigare i höst) och ska nedgradera senare när jag får mer tid. Ute på det stora nätet finns det i alla fall en rörelse som hackar det mesta till denna TV och det finns åtminstone ett par funktioner som jag vill öppna upp:
- Släppa igenom allt ljuddata rått till förstärkaren via TOSLINK. Idag går det bara att få ut 2 kanals den vägen.
- Lägga till en DTS-dekoder i mjukvara så att den kan avkoda alla filmer (har bra stöd för 1080p i mkv redan men ingen DTSavkodare).
- Montera diskar via Samba eller NFS.
2 och 3 verkar redan andra där ute ha fixat.
Öppna protokoll: Hittade idag på morgonen att den faktiskt har ett öppet standardiserat protokoll, UPnP och SOAPservices för att kontrollera det mesta på TVn och skicka meddelanden till den. Ska plocka ut lite mer info om vad den faktiskt kan men ett snabbt hack gjorde att jag kunde visa ett fejkat SMS meddelande på TVn. Nej, den kan inte ta emot SMS men den har ett anrop för att visa information om SMS, dvs det blir en helt vanlig popup på TVn med innehållet i SMSet. Så här ser det ut:
Bilden på TVn.
Och det här skickade jag som kommando:
POST /PMR/control/MessageBoxService HTTP/1.0
Host: 192.168.1.210
Content-Type: text/xml; charset=UTF-8
Content-Length: 828
SOAPACTION: "urn:samsung.com:service:MessageBoxService:1#AddMessage"
Connection: close
<?xml version="1.0" encoding="utf-8"?>
<s:Envelope s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" >
<s:Body>
<u:AddMessage xmlns:u="urn:samsung.com:service:MessageBoxService:1\">
<MessageType>text/xml</MessageType>
<MessageID>can be anything</MessageID>
<Message>
<Category>SMS</Category>
<DisplayType>Maximum</DisplayType>
<ReceiveTime>
<Date>2010-11-21</Date>
<Time>12:13:26</Time>
</ReceiveTime>
<Receiver>
<Number>12345678</Number>
<Name>Receiver</Name>
</Receiver>
<Sender>
<Number>5556</Number>
<Name>Hej alla barn. /Parnes Labs</Name>
</Sender>
<Body>Fe</Body>
</Message>
</u:AddMessage>
</s:Body>
</s:Envelope>
Tog två bilder denna morgon på den vackra fjärden där jag bor. Den ena är med en Desire HD (utan blixt) och den andra med iPhone4. iPhone lagrar bilden i två versioner, en med HDR och en utan HDR. HDR är förenklat en metod för att digitalt få fram en bättre bild genom att exponera motivet flera gånger.
Som ni ser nedan så är iPhone4s bilder mycket bättre, eller? Dock inte så stor skillnad med eller utan HDR just i denna mörka miljö. Vilken tycker du är bäst?
Klicka på bilderna för att dem i full storlek. .
HTC Desire HD
iPhone4 med HDR
iPhone utan HDR
Jag har nu haft en HTC Desire HD i drygt 24h och här kommer ett par första tankar.
-/+ Stor: Ja, den är väldigt stor. Det är 4.3" skärm och det gör att den på något sätt går över gränsen för vad som är bekvämt. Jag har stora händer men min tumme når inte helt över till motsvarande hörn diagonalt utan man måste växla den i handen. Det är dock ganska trevligt med så stor skärm å andra sidan men kanske inte i en telefon.
+ Snabb: Den känns väldigt snabb. Att den har mer minne än "alla" andra telefoner skadar inte och den känns rapp och fin.
- Blaskig skärm: Skärmen känns lite blaskig jämfört med Nexus One och speciellt med iPhone 4 (denna har den bästa skärm jag sett på länge++).
- Taskigt ljud: Både högtalare och mikrofon funkar ganska kasst. Gjorde en testfilm på barnen som stod ca 80cm bort och den uppfattade knappt vad de sjöng! Dåligt!
+ HTC Sense: HTC har lagt till en massa extra godis i gränssnittet vilket är i många fall helt rätt. De har helt enkelt fixat mycket av det som Google inte prioriterat att fixa. Det bara funkar helt enkel.
+ HTCSense.com: HTC har äntligen fattat att en telefon kan man fjärrstyra och göra mer saker med än bara när man håller telefonen i handen och släpper en mycket gedigen portal för ringsignaler, backup, teman, fjärrlåsning etc. Om än ganska buggigt ;)
Fredagar är numer en ledig dag för mig så det blir långhelg varje vecka. Helt underbart måste jag säga och det rekommenderas mycket varmt. Tidigare har jag försökt vara flexledig hela dagar men det har inte fungerat av någon anledning. Jag har inte kunnat släppa jobbet och jobbat i alla fall, även om det bara är jobb i huvudet. Skönt att bara kunna mjukstarta helgen och varva ner på fredagen för att sedan ha en ledig lördag och ledig söndag.
Som jämförelse, om jag jobbar hela fredagen så går det mesta av lördagen åt till att varva ner och sedan är det söndag vilket betyder nästan måndag och jobbet kryper in i huvudet igen.
Vad gjorde vi denna helg? Jo, vi hann med följande: lugn morgon * 3, Porsöskolans höstmarknad, lunch på Porsöskolan med Tovah, en snabbis på Teknikens Hus med bara Oliver, simma med barnen, 9 kokta korvar på Kvantum, bakad potatis, en långtur i skogen till Piratbron, fixa styrning av Legororobot från en telefon, Legorobotsmusikintrument, baka kladdkakemuffins och chokladbollar, baka 4 matbröd, fika på jobbet fastän jag var ledig, ställa i ordning och dra om alla kablar till PS3an, montera bort VHS-bandaren, göra YouTube-film * 2, städa bottenvåningen med betyg från dottern "man känner ju inte igen sig", kasta papper i återvinningen, leka kurragömma på Berget (både vanlig och omvänd) samt spela MASSOR med PS3 och läsa MASSOR om TVapparater.
FavoritPS3spelen just nu är: Lego Harry Potter 1-4, Enslaved - Odyssey to the West, National Geographic Quiz Wild Life, Burnout Paradise, Racquet Sports, Sports Champions och Modnation Racers. Mest blev det Enslaved i helgen! Har även ett par spel som inte går att spela för de är för hemska så de får vänta på att jag och barnen blir mindre rädda för kusliga miljöer: Singularity, FEAR2 och Bioshock 2.
Detta med TV är en riktig surdeg. Har läst massor med reviews hit och dit men suck vad är svårt att välja. Har i princip bestämt mig för en Samsung UE55C7705för jag har fått för mig att jag inte alls vill ha så verklighetslik bild som möjligt (vilket man får av Plasma) utan en ljusstark och skarp bild som man får av LCD/LED. Dock betyder det att TVn blir dyrare vilket bär emot. Tänk om det bara fanns en enda TV att välja på? ;)
Ps. Någon som vill köpa/få en highend VHS-bandare som klarar både NTSC och PAL?
Lekte lite med multiskärmstödet i Google Earth, det så kallade Liquid Galaxy. Det innebär att man kan synkronisera Google Earth på flera datorer samtidigt så när man ändrar vy på en så ändras den på de andra också (en master och flera slavar).
Jag plockade ihop tre MBar och resultatet blev ganska effektfullt även om det gick lite långsamt på de två äldre Maccarna.
Klicka på bilderna för större bild!
Nedan är en snapshot av hur det kan se ut.
Vilken mer funktionalitet skulle ni önska? Hittar ni något som är fel? (Ja, linje 47 saknas och några av färgerna kanske borde trimmas lite).
Stort tack på förhand och testa NU är ni snälla!
Ps. PDFerna som länkas till är gamla och nya kommer senare...
1: Människor bygger ett rymdskepp på jorden.
2: Människor bygger industriella maskiner (== robotar) som kan bygga ryndskepp.
3: Människor kopierar DNA-databserna.
4: Skicka upp skeppet i omloppsbana runt jorden medan skeppet byggs ut för längre rymdfärd genom att t.ex. ta material från 3753 Cruithne (jordens andra måne).
5: Robotarna reser nu mot lämplig gasjätte som t.ex. Jupiter eller Saturnus, och under tiden bygger större motorer.
6: Robotarna kommer till Jupiter och tankar bränsle genom att helt enkelt ta en liten liten del av gasjätten.
7: Skeppet åker mot närmaste planet som kan stödja mänskligt liv.
8: Under resan så bygger robotarna människor från DNA de har med sig och människor är lagom stora när de kommer fram till rätt planet (obs resan tar ca 10K-100K år!)
9: Här byggs nu en kolonisation upp samtidigt som 3-5 nya rymdskepp byggs.
10: Loopa tillbaka steg 4 eller 5 beroende på den nya planetens dragningskraft.
- Eftersom det är en helt ny värld så vi redan nu bestämma vilken ideologisk världsbild de ska ha.
- Den enda kostnad vi har för projektet är det som krävs för att få iväg projektet från jorden. Mycket billigt i det stora hela!
- Efter ett antal 100M år så har vi koloniserat stora delar av det kända universum!
- Jorden och dess "civilisation" har för länge sedan gått under en viss form av människan lever vidare på ett antal olika planeter "där ute".
Vad tror ni om detta? (nej det är inte min idé ;))
Idag fick jag min nya telefon, Google Nexus One:
Det spontana intrycket är "wow, vilken cool telefon och pryl". Av någon anledning så ser den inte riktigt lika snygg ut på bilder som i verkligheten. Jag gillade den skarpt även om många andra där ute tycker att iPhone 3G är snyggare (jag tycker för övrigt att iPhone 2G är snyggare än 3Gn ;)).
Jämfört med min gamla HTC G1 så är hårdvaran bättre på ett antal punkter:
- Mycket bättre kamera. 5mp och bättre lins.
- Blixt till kameran.
- Snabbare CPU. Märks jättetydligt.
- Mer minne. 512MB.
- Tunnare, dock har den inget tangentbord vilket jag egentligen tycker är ett stort minus.
- Större skärm, 3.7 tum.
- Bättre skärm, amoled 800x480
På mjukvarusidan så kommer den med Android 2.1 vilken har ett antal häftiga finesser jämfört med 1.6 som jag kör på min G1a. Det är dock en tidsfråga innan G1an kommer "i kapp". Generellt kan man säga att 2.1 känns mycket mognare som telefon OS än 1.x.
Hur köper man då en Nexus One lagligt till Sverige? Det finns flera olika vägar att gå och speciellt om man vill betala hutlösa extra avgifter till olika skumma aktörer. Ebay är ett sätt. Ett annat är att beställa via International Orders. Ett tredje sätt är att beställa den direkt från Google och använda ett företag som skickar vidare paketet till Sverige. Jag använde det senare med följande steg:
- Öppna en "privat" adress hos Borderlinx.com. Detta är gratis och du får en privat DHL-postlåda hos dem och när det kommer paket till den adressen så kommer det upp på ditt konto och du kan betala via Paypal eller kreditkort.
- Beställ sedan telefoner direkt hos Google och betala via Google Checkout. Nu är dock Google lite luriga och säljer bara telefonen om din dator är i ett land dit de säljer telefonen (ej Sverige ;)). Lösningen är att gå via en proxy och jag använde mig av TOR-nätverket där jag tvingade fram att jag skulle komma ut i just USA. Det finns andra proxy lösningar också. Vill ni veta mer om just detta så säg till! Man behöver bara göra själva beställningen via proxy och så du behöver inte ange någon kreditkortsinformation via någon proxy. Är du riktigt paranoid så kan du sätta ett temporärt lösenord på ditt Google konto och byta tillbaka direkt efter du beställt.
- Betala din telefon via Google Checkout.
- Vänta 24h tills den dyker upp hos Borderlinx och betala där frakten till Sverige ($35-45) plus svensk tull och moms.
- I och med att Borderlinx förbetalar skatt och tull till DHL så passerar paketet Arlanda mycket snabbt innan paketet skickas vidare inom Sverige (vilket tog ca 4h från att den släpptes från DHL utrikes på Arlanda).
Orderkostnad:
Google $564,71 = 4 070,13 SEK
Borderlinx $198.67 = 1431.01 SEK
Totalt $763.38 = 5501.14 SEK
Till detta så måste du köpa en US-kontakt adapter för 220v eller en ny laddar för 100-200 SEK.
Hur är det då med garanti? Här är HTC väldigt trevliga och de ger 24 månaders garanti även om den är köpt i USA men den måste skickas till UK för reparation och inte till deras svenska reparationscenter.
För att summera, den är en cool telefon och telefonen rekommenderas varmt!
Hej
Jag har tidigare skrivit om att jag skrivit lite program för att styra elsaker i hemmet och jag tänkte beskriva lite här vad jag gjort och vilken mjukvara jag använder. En del av det jag använder här är "onödigt" komplicerat men jag har valt dessa komponenter för att det passade min miljö och det jag ville göra just då.
Hårdvara: Denna hårdvara har jag använt:
- en dator (Windows, Linux eller Mac) med en USB plats
- en Telldus TellStick. Denna kostar 649:- hos Kjell & Co och 679:- hos Clas Olsson.
- ett par mottagare som man kopplar i elkontakten och sedan kopplar sina elprylar till. Här finns det många olika att prova på, vissa snyggare och andra fulare. Det är lite varierande stöd för de olika då de pratar lite olika protokoll och man kan styra dem på olika sätt. Notera att om du ska styra något annat än t.ex. lampor så måste du ha de lite kraftfullare mottagarna (aningen större och aningen dyrare). Jag har provat med:
- Clas Olsson 36-1183 (styrs via rå-sändning, se nedan)
- Kjell & Co Fjärrströmbrytare
Mjukvara
Det finns ett antal olika mjukvaror att leka med. Telldus har själva släppt Telldus Center som även innehåller drivrutinerna för att prata med stickan. Dvs även om man inte använder deras användargränssnitt så måste man ladda ner och installera deras mjukvara först. Här finns deras mjukvara samt pekare till ett par andra program.Google Window Toolkit, GWT är ett paket för att skapa webapplikationer i Java utan att behöver skriva en enda rad JavaScript utan GWT kompilerar istället Javakoden till JavaScript som sedan laddas av webläsaren. GWT tar även hand om kommunikationen mellan webläsaren och servern, något som annars kan vara lite svårhanterligt.
Lättast att programmera GWT-applikationer är att använda utvecklingsmiljön Eclipse och Google Eclipse Plugin och jag rekommenderar att du installerar dessa innan du går vidare. Pluginen hanterar många av de komplicerade sakerna som t.ex. att ställa in så man får rätt java-bibliotek när man skapar nya projekt samt ett bra interface till den testkörningsmiljö som finns i GWT.
Efter installationen kan ni ladda ner mitt exempelprogram här: zip eller tar.gz och sedan öppna den i Eclipse som ett nytt projekt. Källkodsfilerna hittar ni under src/com/parnes/telldus/ och i client/ finns de filer som kommer att kompileras till JavaScript och köras i webläsaren och i server/ så hittar ni den enda fil som kommer att köras på servern. Den senare innehåller överst ett par variabler som måste ändras beroende på hur din installation ser ut (Mac/Linux eller Windows och var styrfilerna finns).
För att lära dig hur man bygger och kör GWT applikationer inne i Eclipse kan du följa denna guide hos Google.
Styrning med hjälp av tdtool
tdtool är ett program som ingår i Telldus Center som omnämns ovan och är ett program för att prata direkt med Tellstick utan att använda ett grafiskt gränssnitt. Jag har i min applikation valt att skapa små script för de olika kommandona som att slå på och av respektive enhet.
Här kan du plocka ner de olika scripten och datafilerna som behövs för att styra mottagarna: zip eller tar.gz Notera att du kan köra de små scripten utan att använda installera något web-gränsnitt enligt ovan. Kan vara bra när man ska testa om det fungerar. Filen innehåller tdtool.exe som används för styrning på Windows. På Mac och Linux finns programmet i /usr/bin efter att du installerat Telldus Center.
Sista steget som behövs är en webserver som kan leverera gränssnittet och ta hand om att köra serverdelen av vårt program (delen som pratar med Tellsticken). För detta använder jag Apache Tomcat som är en variant av den klassiska Apache-servern.
Till servern Tomcat laddar man upp så kallade web-arkiv, WAR-filer och dessa får man genom att kompilera sin applikation i Eclipse och sedan packa ihop alla filer som finns i biblioteket war. Här är en förkompilerad och förpaketerad WAR-fil för vårt projekt.
Efter installation av Tomcat så går man till Manager interfacet och där laddar man upp WAR-filer under Deploy och sedan kan man gå till interfacet för vår applikation. Dessa två addresser beror på hur man konfigurerat sin server och kommer inte all fungera annat än om du använder default-värdena vid installationen.
Här är en bild hur test-programmets gränssnitt ser ut:
Det var det hela. Inte så komplicerat eller hur? :)
Fråga gärna via kommentarsfunktionen här under. Lycka till!
Var är jag just nu?
Under de senaste 2 dagarna har årets 24H Business Camp gått av stapeln. Skoj att det finns så många roliga idéer som kommer fram och en skoj är mikrobutik.se. Du lägger upp en vara enligt en mall och de tar en liten procent av köpkostnaden (mellan 10 och 100 beroende på pris på varan) men själva butiken kostar inget. För att testa så lade jag upp en mini-butik för att köpa kaffe.
Vill bli inspirerade och höra pitcharna från 24HBC så rekommenderar jag att ni tar en titt på följande film.
Igår släppte jag en ny version (1.0.8) av min Android-applikation, Temp in Luleå och nytt är att den går att får som 'widget'. Applikationen visar bara temperaturen i Luleå och läsare där ute kan kanske tycker det är meningslöst att utveckla en applikation som bara visar temperatur i för ett enda ställe men jag gör det för att stilla mitt intresse i Android-programmering.
Första bilden är av själva applikationen och den andra visar den som en widget.
Arkitektur: Applikationen är uppdelad i fyra bitar:
- Widget: som visar widget-gränssnittet på "hem-skärmen".
- Application: som visar en fullskärm med mer info om applikationen och där man kan kontrollera den lite.
- Service: en process som kör i bakgrunden och hämtar temperaturen från källan (Marge) och sedan anropar applikationen och widgeten med ett event att det finns nytt temperatur data. Notifieringarna sker via ett callback-interface där varje modul som vill känna till ändringarna registrerar sig för att bli uppdaterad med ett event.
- Notification: Från applikationen kan man välja att även visa nuvarande temperatur som en notifiering. Detta är ett arv från Android innan version 1.5 då det inte fanns widgets.
Det är en enkel applikation men jag har försökt programmera den som om den vore ett mycket större system. Här kommer lite blandade tips och tricks på hur man löser mer eller mindre förekommande problem.
Hur hantera ändring av skärm orientering? När man ändrar orientering på sin Android, dvs vrider på den så man ändrar mellan 'Landscape' och 'Portrait' så uppkommer problemet att ens applikation och widget har olika mycket utrymme att rita sitt gränssnitt på. Här kan man lyssna på events för att bli notifierad om ändringarna men Android har gjort det enklare än så. Man skapar helt enkelt ett bibliotek som heter 'layout-land' parallellt med med 'layout' och där lägger man en xml-fil med UI-layout som heter likadant som den för portrait-layouten. Har man denna fil där så kommer android-system att automatiskt välja rätt layout för de olika tillstånden. Applikationen och widgeten anropas inte ens med en notifiering att en ändring har skett. Dock måste man vara noga med att kalla elementen likadant i de båda layouterna. Tips: om du vill ändra layout i emulatorn så tryck Ctrl-F12 för att växla till nästa layout. Mer info om kontroll av emulatorn.
Hur hantera automatisk start av service/applikation vid boot? Det finns inget automatiskt sätt (liknande andra UNIX-baserade system) att registrera sitt program att det ska anropas automatiskt då systemet bootat upp. Här måste man registrera sig som lyssnare på android.intent.action.BOOT_COMPLETED i AndroidManifest.xml och då anropas den klass man angett och man kan göra det man vill vid start, t.ex. starta en service. Så här ser det i manifest-filen:
<receiver android:name="BootReceiver">
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED">
</action>
</intent-filter>
</receiver>
Hur får man en ram på sin widget utan att leka med Photoshop? Ladda ner en standard widget-ram från widget UI design sidan (bild-filen, inte Photoshop-filen) och lägg den som bakgrund i ditt UI via att sätta android:background="@drawable/frame" i layout-filen. Om du sedan har en LinearLayout som layout så måste du sätta ett offset i y-led överst för att komma inom ramen. Det gör du så här: android:layout_marginTop="5sp"
Finns massor mer att blogga här om gällande denna lilla applikation men det sparar vi till en annan dag!adb root
adb remount
adb push ~/work/android/trout-keypad-v3.kcm.bin /system/usr/keychars
adb shell reboot
from here
Fick ett tips från Jonas Lejon om Glympse. Det är en tjänst för att dela med sig av sin nuvarande position. Visst inget nytt i sig men de har gjort det på ett smartare sätt än vanligt tycker jag. Man delar ut position max 4 timmar (default 1h) och man delar ut det via en anonym URL så det kan inte kopplas till en viss person. Jag gillar hur de löst det även om jag helst hade sett att de använda Ajax istället för Flash på datorsidan när man följer en ' Glympse'.
Man kör Glympse på sin telefon och när man t.ex. ska träffa någon som skickar man en Glympse så kan kompisen se var man är och hur långt kvar man har innan man kommer fram.
Här är en Glympse från min telefon som kommer att fungera i 3.5h timmar till.
Hej allesammans, jag funderar på att köpa en ny kaffelösning. Antingen går på helt manuellt på proffsvis eller på en helautomatisk lösning som kan fixa cappuchino också. Electrolux har en mycket snygg och vad som verkar vara bra maskin, EGC6600.
Den har en separat mjölkkanna som man förvarar i kylen och sedan stoppar in i maskinen när man vill göra cappuchino (eller latte eller bara skummad mjölk) och ingen bit som sitter fast i själva maskinen kommer i kontakt med mjölken vilket leder till mindre städande.Maskinen tillverkas av DeLongi i Italien och det är ju ett bra märke. Philips gör en liknande som tillverkas i samma fabrik men den har lite färre funktioner och är fulare ;) Dock är den billigare.
Eller ska man gå på en Jura istället? Eller en helt manuell lösning? Vad tror ni?