Category Archives: Programmering

NHibernate.Spatial available on NuGet

nhibernate-logo

Building on the excellent work of Richardo Stuven and Surya Pratap, there are now NuGet packages available for NHibernate.Spatial built against NHibernate 3.3.3:

I expect to maintain these packages in collaboration with Mr. Pratap and keep them up to date alongside NHibernate, including the upcoming 4.x release. Note that the Oracle package is not available at this time. Also note that the MsSql2008 package IS compatible with SQL Server 2012.

The packages are currently marked as pre-release, meaning that to install them you must add the -pre flag in the NuGet package manager console. Here are the commands:

Install-Package NHibernate.Spatial.MsSql2008 -Pre
Install-Package NHibernate.Spatial.MySQL -Pre
Install-Package NHibernate.Spatial.PostGis -Pre

Contributors to this project are more than welcome. You can fork it here: https://github.com/suryapratap/Nhibernate.Spatial

@ til besvær

1. mars 2014 splittes Politiets data- og materielltjeneste (PDMT) i enhetene IKT@politiet og Fellestjenester@politiet. Dessverre viser det seg at sak- og arkivsystemet Doculive fra Software Innovation ikke er kompatibelt med navnevalget på de nye enhetene.

Her er problemet: Politiet sender og mottar en vesentlig mengde offentlig korrespondanse som normalt sett skal publiseres gjennom Offentlig Elektronisk Postjournal for å tilfredsstille kravene om offentlig innsyn. Dette stiller en rekke krav til hvilke opplysninger som skal inkluderes i det som publiseres, blant annet:

  • Journalføringsdato
  • Dokumentets dato
  • Saks- og dokumentnummer
  • Sender og/eller mottaker
  • Opplysning om sak, innhold eller emne
  • Kontaktpunkt
  • Arkivkode

DocuLive på sin side støtter skjerming av opplysninger som skal unntas offentligheten gjennom å bytte ut slike opplysninger med en tilsvarende serie @-tegn, også kjent som alfakrøll/snabel-a. Og her kommer vi til det pussige — hvis tittelfeltet i et dokument inneholder en @, så trigger dette en mekanisme i DocuLive som fører til at pliktig informasjon ikke blir synlig i OEP. Dette kan tyde på at DocuLive potensielt mangler skjematisk støtte for å tagge opplysninger som skjermet, og bare bruker String.Contains(“@”) for å avgjøre om opplysninger i en tittel er skjermet.

Software Innovation kom først med en relativt tynn forklaring; de mente at Riksarkivet var indirekte ansvarlige for problemet siden det var de som hadde valgt @ som standard kodetegn for å skjerme opplysninger. Dette stemmer heldigvis ikke. NOARK-standarden er relativt abstrakt i denne sammenhengen, og spesifiserer faktisk ikke konkret hvordan opplysninger teknisk sett skal skjermes. Det nærmeste man kommer i kravlisten er punkt 12.3.3 (versjon 3.1) som sier:

Løsningen bør vise hvilke opplysningstyper som er angitt at skal skjermes. Det at en gitt opplysning er avkrysset for skjerming bør vises både for de som har tilgang til å se de skjermede opplysningene og for de som ikke har tilgang til å se dem.

Til sammenligning så benytter Ephorte, et annet NOARK-godkjent arkivsystem, en asterisk (*) som kodetegn.

Resultatet av dette rotet er uansett at Politiet kan bli nødt til å oppgradere arkivsystemet sitt for å unngå problemet. Et alternativt forslag kan være å finne enhetsnavn uten alfakrøll i seg. Og med tanke på politiets anstrengte forhold til IT så er det kanskje like greit?

Hva er de mest grunnleggende og nyttige ideene innen programmering?

Daniel Lemire har satt sammen en liste over de grunnleggende og virkelig nyttige ideene forbundet med programmering:

  • Structured programming;
  • Unix and its corresponding philosophy;
  • Database transactions;
  • The “relational database”;
  • The graphical user interface ;
  • Software testing;
  • The most basic data structures (the heap, the hash table, and trees) and a handful of basic algorithms such as Quicksort;
  • Public-key encryption and cryptographic hashing
  • High-level programming and typing;
  • Version control.

Dette er en veldig god liste! Jeg ville kanskje lagt til objektorientert programmering, funksjonell programmering og debuggere.

What are the genuinely useful ideas in programming?.

Why your users hate Agile development (and what you can do about it)

Most software developers I know really like Agile. There are a lot of advantages: The iterative process gives developers confidence that the application reflects the users’ needs and wants; by tackling one thing at a time, you can make one thing work — and get feedback on it — before going on to the next; if something big comes up in one iteration, you can address it before it turns into a hairball. Plus, for consultants, iteration implies milestones that can be billed on completion, so you find out about a deadbeat client sooner rather than later. I bet you can add to this list. Clients and users, however… not so much. Users have their own concerns — and sometimes Agile developers don’t recognize them.

Via Why your users hate Agile development (and what you can do about it).

What’s the right balance between code consistency and code improvement? | Ars Technica

Consistency vs. best practice: they are two competing interests any time a dev is working on legacy code. If LINQ hasnt been used previously, should it be used today? “To what extent are patterns part of code style,” Robert Johnson asks, “and where should we draw the line between staying consistent and making improvements?”

Via What’s the right balance between code consistency and code improvement? | Ars Technica.

Bioengineers Build Open Source Language for Programming Cells | Wired.com

Genes contain information that defines the way our cells function, and some parts of the genome express themselves in much the same way across different types of cells and organisms. This would allow Endy and his team to build a language scientists could use to carefully engineer gene expression – what they call “the layer between the genome and all the dynamic processes of life.”

Via Bioengineers Build Open Source Language for Programming Cells | Wired Enterprise | Wired.com.