Nenad Marcell Romić
===================
------------------------- ----------------------------
Ulica Ivana Filipovića 13 nenad.m.romic@gmail.com
51000 Rijeka @marcell
CROATIA +385916272355
------------------------- ----------------------------
Work Experience
---------------
1997-2003
: **ShePOoArts Airways - design & multimedia studio**; founder
*web & multimedia development, project management*
1999-present
: **Multimedia Institute, Zagreb, HR**; founder
*project development, fundraising, mentorship*
2011-2012
: **Jan Van Eyck Academy, Maastricht, NL**; research fellow
*research/analytics on Google, Facebook, Amazon and eBay*
2012-2015
: **Fakultet za medija i komunikacije, Beograd**; lecturer
*courses: "Programiranje za neprogramere", "Hakerska optika", "Čudo tehnike"*
2015-2018 (expected)
: **Center for digital cultures, Leuphana University, Lüneburg, DE**; PhD student
*PhD: Foreshadowed Libraries*
2018-2021
: **Center for post-digital cultures, Coventry University, UK**; research fellow
*research; technology lead for COPIM (Community-led Open Publication Infrastructures for Monographs) - an international partnership of researchers, universities, librarians, open access book publishers and infrastructure providers*
Full stack development and system administration
------------------------------------------------
I write software for people to use it and run internet infrastructures for people to enjoy the provided resources.
My learning path started with a click on "View source" button back in 1996. Meanwhile, I have developed in HTML, Macromedia Flash (Actionscript), CSS, Javascript, Python and Go.
I use GNU/Linux as my primary desktop operating system from 2000. I run web and mail servers. I deployed and maintain Docker orchestration(s) in the cloud (AWS, Digital Ocean, Hetzner, Njal.la...)
I work(ed) with academics, artists/designers, authors and activists. In most of the collaborations, my role is to take care of the technology side. That includes articulating what is possible and is adequate with a particular set of technologies. Also, the design and development of web and desktop applications, setup and maintenance of server infrastructure, as well as the conceptualization, design and production of art exhibitions (and/or art installations).
Featured projects
-----------------
Sandpoints
: is an experimental publishing platform. A publication in Sandpoints is integrated with a dedicated library catalog, prints itself into well paginated PDF and together with the library is offline-ready to be run from a USB stick. Sandpoints keeps Markdown source files in Git and renders them into HTML on Hugo.
*Featured projects using Sandpoints:*
* https://pages.sandpoints.org/dotawo/journal/
* https://machinelistening.exposed/curriculum/
* https://syllabus.pirate.care/
*Technical details:*
* custom Hugo (static site generator) theme (Golang's html/template and text/template) allowing for HTML output into a ell paginated PDF (paged.js) with support for academic citations and integration with the librarian tools developed for the Memory of the World project;
* Git hook written in Go aware of its context (http:// or file://), running commits against the embedded Hugo and deploying the output into the web server environment;
* admin interface done via integration with the Git frontend Gitea;
* Chrome extension written in Javascript and native host messaging executive binary written in Go allowing for fully functional git workflow and editing in web browser via file:// protocol;
* user friendly editor written in Javascript (Svelte) with conversion of Markdown metadata from Hugo's frontmatter into HTML form and back into JSON, used further in Native host messaging and Git hook.
*Git repositories:*
* https://git.sandpoints.org/Drawwell
Memory of the World
: is a network of interconnected shadow libraries, each maintained locally and independently from the others. It is modelled after the concept of public library, extended to the digital realm: *with books ready to be shared, meticulously cataloged, everyone is a librarian. When everyone is librarian, library is everywhere.*
*Featured presentations:*
* keynote at 'Terms of Media Conference II: Actions' at Brown University:
* https://youtu.be/kvzuUgP6d3Q
* at Chaos Communication Congress (32c3, 2015):
* https://media.ccc.de/v/32c3-7279-public_library_memory_of_the_world
*Technical details:*
* backend 2013-2017 in Python (CherryPy) and MongoDB;
* backend 2018 in Python (Sanic) using in-memory with custom persistance (pickle) and cache;
* frontend 2013-2017 in Javascript (jQuery);
* frontend 2017-2020 in Javascript (Vue);
* frontend 2020- in Javascript (Svelte);
* admin tools 2012-2014 in command line written in Python;
* admin tools 2014-2018 [let's share books] GUI written in PyQt as Calibre's pluginl
* admin tools 2018-present in command line 'accorder' written in Python (Click) with support for import from Zotero.
*Git repositories:*
* https://gitlab.com/marcellmars/letssharebooks
* https://gitlab.com/marcellmars/accorder
Logan and Jessica
: is a tool allowing HTTP proxying (via SSH tunnel) in-between two endpoints behind NAT.
*Featured presentation:*
* https://monoskop.org/Ideographies_of_Knowledge/Session_6
*Technical details:*
* Chrome extension/app written in Javascript embedding terminal app into a browser session;
* standalone GUI app written in Python (Tkinter).
*Git repository:*
* https://github.com/marcellmars/logan_and_jessica
Sneakernet @MotW
: *"is a downloadable archive containing sections of the Memory of the World, an extensive archive of human knowledge which defies copyright in favour of the importance of an open and democratic access to the wealth of human knowledge."* (from the exhibition's catalog). An artwork developed for the exhibition "[Life on Planet Orsimanirana](https://www.mkg-hamburg.de/en/exhibitions/archive/2021/life-on-planet-orsimanirana.html)" at Museum für Kunst und Gewerbe Hamburg (2021).
*Technical details:*
* an app written in Go and desgined to be run as the only app on a Raspberry Pi - it starts copying a content stored on the Raspberry Pi onto a USB stick at the moment the USB stick is plugged into the USB port. If the process needs to be terminated before completing, a press of any key on attached numeric keyboard prepares the USB stick for safe eject.
*Git repository:*
* https://gitlab.com/marcellmars/sneakernet