Posts

Highlights

Exploring the Trails of Lagorai: A Series of Hikes in Val Campelle and Beyond

Introduction At the end of the summer of 2024 and during autumn, I rediscovered Val Campelle for hiking. Although I had explored these places before, including ski touring during the winter, this time felt different. I was drawn back not just for the physical activity but because my focus shifted from purely sportive motivation to a deeper interest in the history and landscape. Why Val Campelle? At the beginning, I chose this place because of the availability of relatively long circular hikes. After my first excursion, combined with some past memories, I became curious to invest more time exploring this valley and nearby areas such as Val Malene. A Memorable Visit to Val Malene In 2023, I visited Val Malene, and more specifically, I hiked to Costabrunella Lake. Coincidentally, on the same day, a ceremony in memory of partisans was taking place, which significantly increased my interest. I had not known about the presence of partisans during the Seco...

How I Keep My Research Papers and Bibliography Organized

Image
Keeping your paper library well-organized is essential for finding the right document at the right time. A good organization system helps you stay focused on your research, save time, and improve productivity. Over the years, I have experimented with several digital tools for managing bibliographies and taking notes. I’ve read blogs, watched tutorials, and incorporated advice from others, adapting these methods to fit my personal workflow. My requirements are quite common: organizing papers, taking notes, and accessing them seamlessly across devices such as my laptop and tablet. There are many sources for discovering research papers: recommendations from supervisors, references within papers I’ve read, and social media posts about new studies—both on general platforms like X (formerly Twitter) and research-specific networks like ResearchGate. This results in a massive collection of interesting papers to read and organize. My primary tools are Zotero and Notion. I followed Holl...

How I Organize Myself: From Bullet Journal to Notion

Image
Organizing my daily tasks and long-term goals is essential as I balance my work, PhD research, personal growth, and leisure time. Over time, I've developed a system that blends analog and digital tools to keep everything in order. Here's an overview of how I use these tools and resources to manage work, track habits, and pursue new interests. Although the system can be a bit complex, it works for me, and I regularly try to update and improve the steps. Bullet Journal for Daily Planning and Habit Tracking My bullet journal is the heart of my organization. I track daily tasks, important thoughts, and monitor new habits. I started using this method after reading The Bullet Journal Method by Ryder Carroll [2] , which serves as the foundation for my approach. I adapt the method to suit my needs. For example, I don’t use it for appointments or general note-taking—only for specific to-dos and habit tracking. My structure includes: Index: This is the ...

Use NetworkX for GEOframe topology

Image
A basin network can be seen as a graph, specifically as a directed acyclic tree . In GEOframe , the topology of the basins, which describes the direction of the flow and the interconnections of the basins, is usually saved in a text file with two columns: the first column represents the origin basin , and the second column represents the target basin . The 0 is used to mark the outlet of the network. For example: 8 7 7 4 6 5 5 4 4 3 3 2 2 1 1 0 The 0 mark the outlet. In my work, I've encountered the need to manipulate basin networks so verifying the topological correctness of these new graphs is crucial. To accomplish this task, I chose the NetworkX Python library. This library facilitates a variety of tasks—such as cutting the network, iterating through the network, and comparing two or more networks within the same watershed—thanks to its class structure, specifically the Graph class. As a result, I've developed some functions for basic operations on the network and sha...

Julia programming: My Journey Begins at EGU

Image
The Beginning It's been a long time since I first heard about Julia . Despite my interest, I never got around to actually studying it. That changed recently when I attended a short course on Julia at the last EGU General Assembly . Inspired by what I learned, I returned home determined to dive into programming with Julia. First Steps I started with a basic book on Julia, aiming to build a solid foundation. The simplicity and power of the language fascinated me, and soon, I felt ready to take a more hands-on approach. My Project: A Julia Package As I gained confidence, I began writing my own package. This project is still a work in progress on github. The package includes: Reading Time Series: It can read a time series from a CSV file, handling special formatting and metadata. Goodness of Fit Functions. Graph Operations on river networks.(in progres) Geometry/Geography Operations. Focus on Geography In this blog post, I want to delve into the last point —...

Read magnetic strip card data in Android

Recently I have developed an app with the purpose to read data from an USB card reader. The data to be read are stored on a plastic card organized in this way:  a start tag; a fixed field (length of 17 char); two other fields separated by a white space with no size declarad but always present; an end tag.  The external USB card reader is something similar to an external keyboard so it's possible to override the appropriate method in the  Activity to handle every single character read from the reader. The Activity manages the card data character by character so  firstly I had to create a UsbDecoder class to manage the data flow and to build my output values. Lastly. I had to implemented the onKeyDown to intercept the data from the reader: @Override public boolean onKeyDown(int keyCode, KeyEvent event) { char pressedKey; if (event.getKeyCode() == KeyEvent.KEYCODE_SPACE || event.getKeyCode() == KeyEvent.KEYCODE_TAB) { pressed...

RESTFull GEOJson with Swagger and Slim

I often find myself having to write RESTFull api for small project.  So I have search and tried several tools. I finally choose to use  Swagger  to write the documentation and  Slim micro framework  to implements it. The first step is writing the yalm file in the Swagger editor (there is a nice tutorial at  Api Handyman  blog). With the yalm specification file it's simple to build an html documentation. Swagger have two pre build schema in html (html and html). You can export it, from Swagger Editor with Generate Client button (where you can export other languages client code).  To create the Slim skeleton, simply click on the Generate server button and choose Slim. Now you have two zip file that contains documentation and the skeleton code. Usually my project folder is composed by three subfolders: app (with the api code), api_doc (with the documentation generated by Swagger) and then an db_doc (the database documentation with diagram). T...