Kör ni Mac eller PC? (ang navigeringsprogram)

Här kan man ställa alla typer av segelbåtsrelaterade frågor som inte passar i någon annan kategori
Skriv svar

Kör du Mac eller PC?

Mac
4
22%
PC (Windows eller Linux)
14
78%
Båda, huvudsakligen Mac
0
Inga röster
Båda, huvudsakligen PC (Windows eller Linux)
0
Inga röster
 
Antal röster: 18

Straycat
Silvermedlem
Inlägg: 32
Blev medlem: ons 25 maj 2005, 15:40
Ort: Göteborg

Kör ni Mac eller PC? (ang navigeringsprogram)

Inlägg av Straycat » tor 04 maj 2006, 16:50

Jag har ett projekt i byrålådan i form av ett navigeringsprogram, som jag funderar att väcka nytt liv i. Jag använder ett s k \"cross platform\"-verktyg (wxWidgets) som gör att man kan utveckla program för Windows, Linux och Mac samtidigt. Att få något körbart även på Mac:ar kräver lite extra jobb, därför frågar jag om någon här använder dem.

Mac är, som bekant, en sällsynt fågel men den dyker upp i vissa speciella miljöer, t ex den grafiska branschen. Skulle vara intressant att veta huruvida den har fått någon spridning bland folket här.

I omröstningen har jag buntat ihop Windows och Linux under rubriken \"PC\", inte för deras ev likheter ur användarens synpunkt utan för att det kvittar ur min synpunkt (pga mitt sätt att använda wxWidgets).
-Jörn

Svante
Diamantmedlem
Inlägg: 809
Blev medlem: sön 27 feb 2005, 19:34
Ort: Halmstad

Inlägg av Svante » tor 04 maj 2006, 17:27

Om jag varit kunnig i programmering så skulle jag nog i stället använda tex. Java eller eventuellt flash. Helt plattformoberoende, räcker att man har en browser av något slag.

Program som funkar i bägge miljöerna mac/pc kräver en extra tolk och blir mycket resurskrävande på åtminstånde en av plattformarna.

Sen kan man ju fundera på om behovet finns och om det är värt besväret (massor av jobb).

Tips!
Om Du nu gör slag i saken ändå...
En sak jag blir irriterad på i tex. navigationsprogram är bristen på standardisering. Om vi pratar windows så finns ju (ctrl+p) för att printa, (ctrl+c) för att kopiera osv. som en defactostandard som sällan eller aldrig används i programmen. samma sak med knappar. Ofta ser dom väldigt amatörmässiga ut och förtar hela intrycket av ett bra program. Sen måste självklart programmet också tillföra något till kaskaden av andra likvärdiga program för att ha en chans att hävda sig - antingen lika bra men med lägre pris, alternativt med nån ny innovativ funktion som ger mervärde.

* Fullständig integrering med windows - konstigt nog nyskapande :wink:
* Sharewareversion som klarar vektorkort
* hitt på nått nytt... bara inte ett grötigt/flashigt gränssnitt (Tiki tex.), det blir alltid sämre i längden utan mer rena nyttofunktioner.

Lycka till med ditt projekt.

Svante

Straycat
Silvermedlem
Inlägg: 32
Blev medlem: ons 25 maj 2005, 15:40
Ort: Göteborg

Inlägg av Straycat » tor 04 maj 2006, 19:51

Svante skrev:Om jag varit kunnig i programmering så skulle jag nog i stället använda tex. Java eller eventuellt flash. Helt plattformoberoende, räcker att man har en browser av något slag.
Jag har tittat på Java just för att det är plattformsoberoende. Man behöver inte ens en browser för att köra det, bara "Java VM". Det är ett elegant språk, ett par pinnhål modernare än C++ (även om typsynonymer fortfarande saknas). Problemet är att Java-program blir alldeles för långsamma.

Flash är en "multimedia authoring environment", alltså ingenting för en programutvecklare.
Program som funkar i bägge miljöerna mac/pc kräver en extra tolk och blir mycket resurskrävande på åtminstånde en av plattformarna.
Jepp, det är just tolken som är problemet med Java. Med wxWidgets kör man "native", vilket betyder att man kompilerade program i full fart på varje plattform. Ur en och samma källkod får man alltså en separat programfil per plattform.
Sen kan man ju fundera på om behovet finns och om det är värt besväret (massor av jobb).
Just det, i Macens fall behövs det ett hyfsat intresse från användarna för att jag ska bry mig. Totalt är de ca 3-5% av datoranvändarna. Det räcker inte långt för att man ska bry sig när det gäller nisch-program, så om de inte råkar vara överrepresenterade inom nischen är det bortkastat jobb.

Linux är inte stort men det växer stadigt och det finns flera fördelar med att göra sina program körbara under det. Det är inte så svårt heller med wxWidgets, förutom när det gäller utskrifter (märkligt nog).
Tips!
Om Du nu gör slag i saken ändå...
En sak jag blir irriterad på i tex. navigationsprogram är bristen på standardisering. Om vi pratar windows så finns ju (ctrl+p) för att printa, (ctrl+c) för att kopiera osv. som en defactostandard som sällan eller aldrig används i programmen. samma sak med knappar.
Jag är helt med dig! Jag har noll tolerans för program som inte känns naturliga eller integrerade med sin plattform och hittar på egna 'standarder', så var lugn för att jag inte ska göra så'na misstag ;). Det är faktiskt den aspekten som gör att det krävs en del extra jobb för att anpassa sig till Mac om man är PC-utvecklare. Tekniskt sett skulle det vara lätt att göra ett Windows-program som kör under Mac (med QT eller wxWidgets) men en Mac-användare skulle få spader av ett program som inte använder samma knappar eller inte ser ut och känns som ett Mac-program.
Sen måste självklart programmet också tillföra något till kaskaden av andra likvärdiga program för att ha en chans att hävda sig ...
Där har jag väl mest att komma med för landnavigering, så jag får erkänna att en sjöversion mest blir en bieffekt av allt arbete med landversionen. Åtminstone tills jag konverterar från landkrabba till seglare, vilket ska bli av någon gång då den digitala arbetsmarknaden tinar...
-Jörn

Straycat
Silvermedlem
Inlägg: 32
Blev medlem: ons 25 maj 2005, 15:40
Ort: Göteborg

Inlägg av Straycat » tor 04 maj 2006, 19:58

Måste förtydliga att Java blev för långsamt för att hantera stora rasterkartor (och sannolikt även vektorditon). Det finns en massa fall där Javas lägre prestanda räcker alldeles utmärkt och där programmeraren spar sin egen tid på att använda det.
-Jörn

Herr Q

Inlägg av Herr Q » fre 05 maj 2006, 07:09

För att ytterligare grotta ner i nörderiet, så fungerar Java i två steg, och VM står för Virtual Machine. Det innebär i praktiken att Javaprogrammet i steg ett kompileras till bytekod, som sedan exekveras på respektive plattforms virtuella maskin. Samma princip används för emulatorer, t ex Mac:s Windowsemulator. Problemet är som tidigare framhållits, prestandan.

Det kan också diskuteras huruvida ett väl utfört och optimerat (navigations)program i realiteten behöver den överprestanda som står till buds i moderna datorer, så programmmeringsverktyget kan antagligen väljas helt efter konstruktörens preferenser. En Unix(Linux)applikation kunde vara intressant, men knappast kommersiellt gångbart - om så bara för att den kulturen bygger så kraftfullt på dela-med-sig-tänk och kombinationen data- och seglingsnörd är nästan nödvändig. Men entusiaster finns det förmodligen många av i just det lägret.

Jag kan inte tänka mig att det går att hitta tillräckligt många Mac:ar i båtvärlden. Men det är en informerad gissning, inte en statistiskt underbyggd sanning.

Sedan, som surgubbe och allmän månglare av eftertanke före, har du tänkt dig detta som ett projekt för din egen glädje, intresse och utveckling, eller ser du det som ett kommersiellt projekt? För i det senare fallet, betänk att ett nytt och föga spritt program för en vital säkerhetsfunktion (positionsbestämning) tenderar att bli ett B-alternativ, som hela tiden jämförs med de etablerade. Eller med andra ord: Man måste tycka det är jättekul att grotta, för det kan hända att det är enda glädjen man får ut av det hela.

//HQ

Straycat
Silvermedlem
Inlägg: 32
Blev medlem: ons 25 maj 2005, 15:40
Ort: Göteborg

Inlägg av Straycat » fre 05 maj 2006, 14:08

Herr Q skrev:Det kan också diskuteras huruvida ett väl utfört och optimerat (navigations)program i realiteten behöver den överprestanda som står till buds i moderna datorer, så programmmeringsverktyget kan antagligen väljas helt efter konstruktörens preferenser.
Än är vi inte där när det gäller att skala om, rotera och dekomprimera (det finns LZW- och PNG-komprimerade kartor) bitmappar, tyvärr. Annars skulle jag använt Haskell, ett språk där man skriver motsv 10 sidor Java- eller C++-kod på 1-2 sidor. Dessutom är det vackert ;).
En Unix(Linux)applikation kunde vara intressant, men knappast kommersiellt gångbart ...
Nej, det tror inte jag heller i dagsläget. Linux har fortfarande en bit kvar till att bli 'mainstream' men det växer, speciellt i Tyskland hos både hemanvändare och offentlig förvaltning. Lär man sig Linux-utveckling idag och gör sina grejor körbara under Linux från början kommer man att ha ett försprång den dagen då Linux blir mainstream. Blir det inte mainstream har man åtminstone säkrat sig mot 'lock-in' genom att lära sig skriva portabla program.

En annan långsiktig aspekt är att programutbudet fortfarande är större för Windows än för Linux, även om gapet minskar stadigt. Om jag enbart utvecklar för Windows blir jag en del av det problemet och gör Bill Gates en tjänst, vilket jag inte vill.

Det var en liten utvikning men med DRM, TCPA och EFI runt hörnet i Windows-världen, blir det mer angeläget för varje dag att ta klivet in i Linux-världen.
Sedan, som surgubbe och allmän månglare av eftertanke före, har du tänkt dig detta som ett projekt för din egen glädje, intresse och utveckling, eller ser du det som ett kommersiellt projekt?
Prototypen skrevs för att skapa s k "roadbooks" som ser ut så här (utskrivet från mitt program):

Bild

Nästa steg blev att koppla in GPS, mest av nyfikenhet. Programmet har väckt intresse bland landkrabbor på offroadhojar, så det kan vara lönt att utveckla det vidare. I övrigt handlar det väldigt mycket om att lära mig cross-platform-utveckling. Man skulle kunna kalla det en spin-off från olika behov, snarare än ett kommersiellt projekt.

Å andra sidan kommer det inte att bli något större problem att slå Fugawi, både vad gäller innehåll och användargränssnitt, och Fugawi är ju kommersiellt.
-Jörn

Herr Q

Svår nördvarning, se upp!

Inlägg av Herr Q » fre 05 maj 2006, 16:17

Som reflektion till kraftbehov kan jag berätta att jag \"hittat\" en pytteliten Toshiba Libretto, med en 266Mhz Pentiumdator - den charmade mig med sina mycket rimliga kraftbehov. Den duger för att köra det inte alldeles totaloptimerade (underdrift!) Levande Sjökortet, en Windows, OLE och Accessbaserad lösning med rasterkartor i botten.

Så det kan nog låta sig göras att skriva en snabb applikation även med rasterkartor - beroende, förstås på vad man sätter som need- och nice-krav... (fy mig, att säga så!).

Men som Svante sa - lycka till och kör hårt.

//HQ

Straycat
Silvermedlem
Inlägg: 32
Blev medlem: ons 25 maj 2005, 15:40
Ort: Göteborg

Inlägg av Straycat » fre 05 maj 2006, 20:07

Ja visst funkar det med rasterkartor. Problemet var att det blev segt att dekomprimera och skala om dem med Java. Med C++ går det tillräckligt fort för att bli körbart även på äldre datorer. När man ritar rasterkartor i deras 'naturliga' storlek går det blixtsnabbt, snabbare än att rendera vektorer.

Pressar man ihop rasterkartan till översiktsskala blir det däremot tungt för processorn men då blir kartbilden å andra sidan svårläst, så det är ingen större begränsning i praktiken. I 'normala' zoomgrader kommer det att köra smärtfritt även på din 266:a, jag har använt prototypen på en 200:a.

Nåja, vi får se det blir av det hela. Som alla inlärningsprojekt kommer det att gå långsamt i starten.
-Jörn

Sten_Ljungkvist
Silvermedlem
Inlägg: 33
Blev medlem: fre 20 jan 2006, 17:02

fritid

Inlägg av Sten_Ljungkvist » tis 09 maj 2006, 21:08

Om man är snäll, vänlig och framför allt bestämd så behöver man inte ta med någon PC eller annan dator på sin fritid. Än så länge kan arbetsgivaren inte kräva att man släpar med dator, telefon, modem, bredband, o.s.v. , på sin fritid. Jag tycker man skall ta fasta på det och vägra PC på fritiden.
Jag lyckades i alla fall, till slut, i mina förhandligar med min arbetsgivare.

Skriv svar