Okkar reynsla

Á þeim rúmum 20 árum sem við höfum starfað í hugbúnaðargeiranum höfum við náð að tileinka okkur mjög víðtæka reynslu og þekkingu á hinum ýmsu forritunarmálum, forritunarumhverfum (API), forritunartólum (þýðendum ofl.) stöðlum og aðferðarfræðum.

Það er því óhætt að segja að þú ert í góðum höndum ef við vinnum verkefni fyrir þig eða þitt fyrirtæki.

Hér er stutt og alls ekki tæmandi yfirlit yfir okkar reynslu.

Forritunarmál og forritunarumhverfi

Við getum forritað hvort sem er fyrir Linux/Unix eða Windows í C, C++, C#, Python, Java, Erlang, Visual Basic, Javascript, PHP, Assembler (x86, ARM), Navision og verilog og notað STL, .Net, Classic ASP og ASP.Net svo nokkur dæmi séu tekin.

Það er vert að benda á að forritunarmál í sjálfu sér eru ekki mjög flókin; þau eru öll frekar lík hvert öðru þar sem flest þeirra byggja á gömlum sameiginlegum grunni. Ef maður kann eitt þeirra þá tekur ekki langan tíma að læra nýtt.

Aðeins annað á við um forritunarumhverfi (API) því þau geta verið flókin og það tekið langan tíma að læra vel á þau. En eins og í mörgu öðru hjálpar reynsla af einu umhverfi til við að læra á nýtt óþekkt umhverfi þannig að þetta styður við hvort annað.

Við erum því í vel stakk búin að takast á við ný forritunarmál, kerfi eða umhverfi sem við þekkjum ekki eða fara aðrar ótroðnar slóðir. Ekki láta það stoppa þig að hafa samband við okkur þó þú sjáir ekki forritunarmálið eða -umhverfið talið upp hér. Það eru góðar líkur á því að við höfum notað það áður eða getum auðveldlega sett okkur inn í málið á skömmum tíma.

Forritunartól

Við höfum notað þó nokkra þýðendur og forritunartól í gegnum tíðina.

Við forritun í C/C++ á Linux þá höfum við notað gcc en höfum upp á síðkastið verið að færa okkur yfir í að nota clang meira.

Á Windows höfum við mikið forritað í C# og notum þar nær eingöngu Visual Studio.

Útgáfustýring hugbúnaðar er einn mikilvægasti þáttur hugbúnaðarþróunar til að tryggja gæði hugbúnaðarins og auðvelda rekjanleika á breytingum. Í gegnum tíðina höfum við notað Subversion, Microsoft Team Foundation og git en notum nú alfarið git í allri okkar hugbúnaðarþróun, enda eitt öflugasta útgáfustýringarkerfi í heimi.

Staðlar

Við getum forritum á móti algengustu stöðlum sem eru í notkun á netinu í dag, eins og TCP/IP, DNS, HTTP og Websocket, CSS, WebGL og BPMN, svo nokkur dæmi séu nefnd.

Ef þú þarft aðstoð við að forrita á móti ákveðnum staðli sem við höfum ekki notað áður þá eigum við auðvelt með að setja okkur inn í það hvernig hann virkar og forrita það sem þú óskar eftir.




Aðferðafræði

Að þróa hugbúnað er almennt séð flókið ferli og því skiptir sköpum að fylgja góðri aðferðafræði þegar hugbúnaður er hannaður og útfærður.

Eins og í flestu þá eru tískusveiflur í notkun mismunandi aðferða við að þróa hugbúnað og undanfarið hefur SCRUM átt hug flestra.

SCRUM hefur marga góða kosti og höfum við notað þá aðferðafræði eða afbrigði af henni undanfarin ár með góðum árangri. Í dag einbeitum við okkur að því að sameiginlegur skilningur á kröfum sé til staðar á milli okkar og viðskiptavinarins og að styðja vel við breytingar á kröfum á þróunarferlinu með hæfilega hraðri ítrun.

Mikilvægur þáttur í þróunarferlinu er að átta sig á því ferli sem hugbúnaðurinn á að styðja við og því skipar ferlagreining stóran sess í hugbúnðarþróuninni, sérstaklega í upphafi. Við höfum notað Business Process Modelling Notation (BPMN) til að setja fram flókin ferli en oft er nægjanlegt að teikna ferli upp með einfaldari hætti.

Hafðu samband ef þú vilt ræða málin frekar.

Samantekt

Hér er tæknileg samantekt á því sem við höfum þekkingu og reynslu af:

Forritunarmál

  • C/C++
  • C#
  • Javascript
  • PHP
  • Python
  • Java
  • Erlang
  • Visual Basic
  • Verilog
  • Assembler (x86 og ARM)
  • Forth
  • Bash
  • Fish
  • SQL

Forritunarumhverfi

  • Node.js
  • Three.js
  • xeogl
  • STL
  • .Net
  • ASP.Net
  • Classic ASP
  • Navision
  • Fjölnir
  • Drupal
  • Wordpress
  • Excel

Gagnagrunnar

  • MySQL/MariaDB
  • Microsoft SQL Server
  • SQLite
  • ZODB

Stýrikerfi

  • Linux
  • FreeBSD
  • Windows

Staðlar

  • TCP/IP
  • HTTP
  • DNS
  • Websocket
  • OpenGL
  • WebGL
  • BPMN
  • CORBA
  • EDIFACT
  • XML
  • JSON
  • FTP
  • POP3
  • IMAP

Forritunartól

  • gcc/g++
  • clang/clang++
  • Visual Studio
  • git
  • make
  • tup

Vélbúnaður

  • x86
  • ARM
  • Xilinx FPGA