Jag vill göra ett program för att hålla reda på arbetstid, vilket språk bör jag använda?

Permalänk

Jag vill göra ett program för att hålla reda på arbetstid, vilket språk bör jag använda?

Hej.

Jag är nybörjare när det kommer till programmering men har en del erfarenhet från både Python och Java.

Jag har länge funderat kring att försöka skapa ett program/app för att hjälpa mig själv hålla koll på vilka dagar jag arbetar och hur många timmar det blir varje månad.
Jag tänker mig något liknande detta ----> Almanacka där alla månader för året är med ----> Jag lägger in mitt mitt rullande skift schema ----> programmet fyller därefter i alla dagar jag arbetar och är ledig året ut.

Har sökt efter något sådant här men lyckas inte hitta något som jag tycker funkar bra. Det jag nu undrar är om någon kan peka mig i rätt riktning, vilket språk är lämpligast att skriva detta i? Alla tips på hur jag börjar att skapa ett sådant här program mottages.

Mvh

Baronen

Förtydligae trådtiteln
Permalänk
Medlem
Skrivet av Bruna Baronen:

Hej.

Jag är nybörjare när det kommer till programmering men har en del erfarenhet från både Python och Java.

Jag har länge funderat kring att försöka skapa ett program/app för att hjälpa mig själv hålla koll på vilka dagar jag arbetar och hur många timmar det blir varje månad.
Jag tänker mig något liknande detta ----> Almanacka där alla månader för året är med ----> Jag lägger in mitt mitt rullande skift schema ----> programmet fyller därefter i alla dagar jag arbetar och är ledig året ut.

Har sökt efter något sådant här men lyckas inte hitta något som jag tycker funkar bra. Det jag nu undrar är om någon kan peka mig i rätt riktning, vilket språk är lämpligast att skriva detta i? Alla tips på hur jag börjar att skapa ett sådant här program mottages.

Mvh

Baronen

Då du vill göra en app så är det bra att veta till vilken plattform: Android, iOS, Windows Phone? Går också att skriva appar som fungerar på flera plattformar (så kallade hybridappar som bygger på webbtekniker, samt en variant på appar som kompileras för respektive plattform), som då kan skrivas i flera olika språk. Vanligast är väl Javascript + HTML/CSS, men finns fler alternativ.

Men annars så rekommenderar jag Objective-C eller Swift för iOS, Java för Android, och C# för Windows Phone. Tror det är enklast att börja så som nybörjare med.

Det du behöver göra är att skriva kod som kan parsea ditt schema. Om vi säger att schemat är en Excel-fil, så måste du på något sätt få ut informationen du behöver, strukturerat på ett sätt som din app behöver. Jag skulle nog börja med den biten själv, men det finns såklart flera olika sätt att skriva en app på. Du kan också börja med att ta fram UI:t, och köra med "dummy-data".

Permalänk
Skrivet av Spleak:

Då du vill göra en app så är det bra att veta till vilken plattform: Android, iOS, Windows Phone? Går också att skriva appar som fungerar på flera plattformar (så kallade hybridappar som bygger på webbtekniker, samt en variant på appar som kompileras för respektive plattform), som då kan skrivas i flera olika språk. Vanligast är väl Javascript + HTML/CSS, men finns fler alternativ.

Men annars så rekommenderar jag Objective-C eller Swift för iOS, Java för Android, och C# för Windows Phone. Tror det är enklast att börja så som nybörjare med.

Det du behöver göra är att skriva kod som kan parsea ditt schema. Om vi säger att schemat är en Excel-fil, så måste du på något sätt få ut informationen du behöver, strukturerat på ett sätt som din app behöver. Jag skulle nog börja med den biten själv, men det finns såklart flera olika sätt att skriva en app på. Du kan också börja med att ta fram UI:t, och köra med "dummy-data".

Tack för svaret.

Var kanske lite otydlig med vilken plattform som är huvudmålet. Jag har fått känslan av att det är lättast att börja med att skapa program för PC och tanken var väl mer att om jag får det att funka till PC så kan man gå vidare och se om man kan få det att funka på andra plattformar (IOS/Android).

"parsea" Har jag ingen aning om vad det betyder. Men om jag gissar lite så behöver jag en kod som hämtar information från t.ex. en Exel-fil. UI biten är den sista fundering jag har just nu så det får vänta haha

Permalänk
Medlem
Skrivet av Bruna Baronen:

Tack för svaret.

Var kanske lite otydlig med vilken plattform som är huvudmålet. Jag har fått känslan av att det är lättast att börja med att skapa program för PC och tanken var väl mer att om jag får det att funka till PC så kan man gå vidare och se om man kan få det att funka på andra plattformar (IOS/Android).

"parsea" Har jag ingen aning om vad det betyder. Men om jag gissar lite så behöver jag en kod som hämtar information från t.ex. en Exel-fil. UI biten är den sista fundering jag har just nu så det får vänta haha

Ah då missuppfattade jag det hela. När jag läser ordet "app" så tänker jag direkt på mobila enheter, men det finns ju såklart till PC med.

Ska du göra en desktop variant så funkar exempelvis Python (som du nämnde att du kunde) bra!

Parsea är väl egentligen inget riktigt ord på svenska så det tar jag på mig, men du behöver helt enkelt "läsa igenom" Excel-filen, och ta fram informationen du behöver så det kan användas av ditt program. Finns många bibliotek för att hantera Excel-filer. Ett exempel för Python är: https://bitbucket.org/openpyxl/openpyxl .

Det du behöver ha är väl datum du jobbar på, samt antal timmar för varje datum, osv. Så ladda in Excel-filen, analysera hur den är uppbyggd, och med läs in relevant data du behöver.

Med den informationen så blir det sedan enkelt att t.ex. summera hur många timmar per månad du jobbar.

Permalänk
Medlem

Det låter passande att köra Python. Du kanske även vill göra någon anslutning mot google calendar api så att du kan titta i kalendern från valfri dator/telefon på när du jobbat/ska jobba.
https://developers.google.com/api-client-library/python/start...

Visa signatur

/M

Permalänk
Hedersmedlem

*Trådtitel redigerad*

Jag förtydligade trådtiteln så att det dels blir lättare för dig att få svar, dels för att andra med liknande funderingar ska hitta tråden.

Permalänk
Skrivet av Spleak:

Ah då missuppfattade jag det hela. När jag läser ordet "app" så tänker jag direkt på mobila enheter, men det finns ju såklart till PC med.

Ska du göra en desktop variant så funkar exempelvis Python (som du nämnde att du kunde) bra!

Parsea är väl egentligen inget riktigt ord på svenska så det tar jag på mig, men du behöver helt enkelt "läsa igenom" Excel-filen, och ta fram informationen du behöver så det kan användas av ditt program. Finns många bibliotek för att hantera Excel-filer. Ett exempel för Python är: https://bitbucket.org/openpyxl/openpyxl .

Det du behöver ha är väl datum du jobbar på, samt antal timmar för varje datum, osv. Så ladda in Excel-filen, analysera hur den är uppbyggd, och med läs in relevant data du behöver.

Med den informationen så blir det sedan enkelt att t.ex. summera hur många timmar per månad du jobbar.

Tackar nu vet jag i vilken ända jag börjar Huvud målet är att minimera det som jag själv måste skriva in, jag vill automatisera så mycket som möjligt. Att på något sätt få mitt schema in i pythons kalender och där även lägga till en kalkylator. Sitter just nu och försöker lista ut hur jag får in schemat i kalendern.

Permalänk
Medlem
Skrivet av Bruna Baronen:

Tackar nu vet jag i vilken ända jag börjar Huvud målet är att minimera det som jag själv måste skriva in, jag vill automatisera så mycket som möjligt. Att på något sätt få mitt schema in i pythons kalender och där även lägga till en kalkylator. Sitter just nu och försöker lista ut hur jag får in schemat i kalendern.

Att automatisera saker är en av sakerna som programmering är bra för. Det bästa för dig vore ju att du bara skickar in en Excel-fil till ditt program, och programmet gör sedan allt automatiskt, och presenterar en snygg kalendervy, samt information om antal timmar osv.

Jag tänker att flödet ser ut såhär. Du startar programmet -> klickar på knapp "ladda in ny schemafil" -> väljer ditt schema i Excel-format -> programmet laddar in och presenterar en kalender, med all statistik uträknat.

Stegen rent tekniskt är då att läsa in Excel-filen (ibland är det superenkelt, ibland lite svårare beroende på hur den är strukturerad), sedan bygga upp kalendern. Sen ska ju allt presenteras snyggt grafiskt med, vilket även det kan vara knepigt ibland.

Hittade ett "kalenderbibliotek" för Python meden snabb googling. GUI för Windows/OSX/Linux: http://learning-python.com/frigcal/Readme-frigcal.html
Kanske kan vara något? Finns annars flera sätt att göra GUI, t.ex. kan du bygga din app som en webapp, med Python som backend och sedan göra UI:t i HTML/CSS/JS (eller göra allt med webtekniker ifall du föredrar det).

Du kan ju också hoppa över att göra GUI:t helt och hållet (kanske så du tänkt till och med)? Och isåfall kanske använda typ Google Calendar. Då blir uppgiften istället att konvertera Excel-filen till ett format som Google Calendar kan läsa in.
Hur du gör är helt upp till dig.

Lycka till!

Permalänk
Skrivet av Spleak:

Att automatisera saker är en av sakerna som programmering är bra för. Det bästa för dig vore ju att du bara skickar in en Excel-fil till ditt program, och programmet gör sedan allt automatiskt, och presenterar en snygg kalendervy, samt information om antal timmar osv.

Jag tänker att flödet ser ut såhär. Du startar programmet -> klickar på knapp "ladda in ny schemafil" -> väljer ditt schema i Excel-format -> programmet laddar in och presenterar en kalender, med all statistik uträknat.

Stegen rent tekniskt är då att läsa in Excel-filen (ibland är det superenkelt, ibland lite svårare beroende på hur den är strukturerad), sedan bygga upp kalendern. Sen ska ju allt presenteras snyggt grafiskt med, vilket även det kan vara knepigt ibland.

Hittade ett "kalenderbibliotek" för Python meden snabb googling. GUI för Windows/OSX/Linux: http://learning-python.com/frigcal/Readme-frigcal.html
Kanske kan vara något? Finns annars flera sätt att göra GUI, t.ex. kan du bygga din app som en webapp, med Python som backend och sedan göra UI:t i HTML/CSS/JS (eller göra allt med webtekniker ifall du föredrar det).

Du kan ju också hoppa över att göra GUI:t helt och hållet (kanske så du tänkt till och med)? Och isåfall kanske använda typ Google Calendar. Då blir uppgiften istället att konvertera Excel-filen till ett format som Google Calendar kan läsa in.
Hur du gör är helt upp till dig.

Lycka till!

Detta var helt klart inte alls så lätt som jag trodde. Startade detta projekt mest för att lära mig något.

Har försökt att att bara läsa excel filen i python men lyckas inte få till koordinaterna för cellerna....
"print(sheet_ranges.cell("A1:G3").value)"
Har sökt runt på diverse olika sidor och testat olika metoder dock lyckas jag ändå inte få till det utan får Erros invalid cell coordinates. Om jag bara specificerar 1 cell (A1) så funkar det.

Permalänk
Medlem

@Bruna Baronen:
Jag skummade igenom deras exempel, jag ser att de aldrig kör med diagonala start och slut, dvs antingen skriver de en enda cell, eller två som är i rad, som tex A1:B1. Läste dock inte igenom så hemskt mycket, men kanske kan det vara problemet?

Om du testar A1:A3 eller A1:G1, funkar det?

Visa signatur

/M

Permalänk

@Marowak:
Testade precis med att skriva "A1:B1" och även "A1:A3" och får samma error som tidigare. Om jag ändrar () till [] som jag också sett i något exempel så får jag en annan error "object has no attribute ___getitem___"