Hacker Newsnew | past | comments | ask | show | jobs | submit | not_the_nsa's commentslogin

I was first in, best dressed to write the R API wrapper for an open source server (ODK Central). Proceeded to go through open source peer review at rOpenSci and made it a robust R package that is now used by a good few people.

The package is of course nothing HN worthy, but I'm proud of having contributed something back to FOSS.

The crunchy bit was parsing form data by introspecting a form schema (then XML, now JSON) which initially nearly made me lose my mind, hence the package name "ruODK"?


Australia here. When we're not on fire or under water (which is also where scooters perform rather badly), it often seems to be too hot to wear safety gear.

Add the sense of entitlement of large 4WDs to complete non-enforcement of road rules protecting riders of both motor- and acoustic bikes by the Police, and you've got a deadly mix going.


Yeah, I think the Giant Car problem is what will doom this system in the US. True scooters like these can use the bike lanes in most cities (ymmv) so they might have a chance but they'll be stuck behind regular bikes and e-bikes and so limited to those speeds.


> too hot to wear safety gear

There is mesh synthetic safety gear that's quite good these days (I'd imagine it'll eventually disintegrate on a long slide, but will at least help with impact. Also road rash typically isn't what will actually kill you). It also comes in colors that will reflect the sun a little more than black, which is still the most popular motorcycle clothing color by sales.

I used to ride a lot in Ocotillo Wells where it would hit 110F in full safety gear, so it is possible. Helps when you're going fast enough to get wind chill.


My grandfather, a teacher in peace times and Wehrmacht Lt in WWII, reportedly used steno to write notes on impossibly small pieces of paper. I guess the savings in paper suited his extremely frugal mindset, sharpened by the two world wars and two post-war periods he had to live through.


I've experienced this from the opposite side (positive feedback) and wanted to share that the tone and structure of the rOpenSci community seem to foster positive feedback and community interactions.

I maintain an R package, an API wrapper for a popular electronic data capture framework, which was peer-reviewed by rOpenSci (https://ropensci.org/). They put extreme care into making software as accessible and inclusive as possible, which I like a lot. Especially the rOpenSci community (see their CoC (https://ropensci.org/code-of-conduct/)) is full of considerate, caring human beings. One could call them the Anti-SO.

Through the peer review process, community requests and GH issues, there's probably a year's worth of spit-polishing added on top of the "works for me" level. This is my first publicly used software package, so I'm taking this as a learning curve and I'm bending over backwards to making this package as inviting and usable as possible. I get away with this as I'm a public servant and paid to deliver value to the general public. And I must say, every improvement over my initial "good enough" version has paid off against the main project I'm using this package for.

So my experience with this tiny, niche, package is overwhelmingly positive. I blame the audience - R programmers, rOpenSci members, and members of the community of the software I'm API-wrapping, which all are stressed out researchers grateful for help. These communities have also a good code of conduct. Maybe also issue templates with friendly guidance to give me very precise feedback (and the advice to take common sense over my guidance) help. Maybe they also repel low effort "could you please do my homework for me" queries.


Thanks for sharing this. Right now I'm burnt out beyond words, having delivered a phase of a huge project, followed by upper management actions that make me feel extremely devalued and dehumanized. I've already written a list of personal development tasks for the three weeks' leave ahead - I need to up-skill, then find a new employer - which I'll restructure into little wins.


> Right now I'm burnt out beyond words, having delivered a phase of a huge project, followed by upper management actions that make me feel extremely devalued and dehumanized

I quit over something like this. Best decision of my life. I was the lowest paid engineer, I won/led/only person that worked on a major contract (20% of revenue) and they said I was bold for asking for a promotion that would put me equal pay with people that brought in no contracts. Don't work for toxic management. It just isn't worth it. It takes a huge toll on your mental health and honestly no money is worth that. I was burnt out for over a year after that experience. I learned that when applying for positions you should also be interviewing your manager. That's become one of my top criteria.


For a second I thought I wrote this comment, then I realized I didn't, but it's just so familiar.

The burnt out feeling is coming mainly from the feeling of how much prep is required to switch jobs even. I'm just hoping the promotion actually comes through and I don't need to but at the same time I'm preparing now so that 6 months from now I can leave on a dime if I want.


You should prob just completely take a break during the 3 weeks. Go hiking, biking, etc and let your brain rewire so that you're not in a flight or fight mode. Something like "just walking hard for 5 hours gets me to the top of the mountain" and then you'll be so fresh after 3 weeks of that. Work won't seem as stressful or important in life.


It's amazing what a bit of exercise and a head clear of problems to solve can do for you. In my experience, it's unfortunately the case(for me at least) that the harder and longer you push before you burnout scales linearly with the length of the break you'll need to take in order to recover.

I learned this lesson the hard way and ended having to take a multiple year hiatus from even looking at a text editor. I wouldn't be surprised if it was in a way a form of PTSD; for a long while, even thinking about programming elevated my heart rate. I ended up working as a bike mechanic during that time away, and the combination of a low stakes environment and working with my hands did my mental health a lot of good.


Damn crazy. Why did that happen? Moderate burnout situation that went on for way too long? Or intense burnout in a few months?

Yeah I mean going off of the great burnout comment before, it's that the negative mental pathways are being carved super deep every day by your continued effort -> failure (or perceived failure by you or manager).

I wonder if mushrooms/acid/mdma can help cure professional burnout faster?

How's being a bike mechanic money-wise? If you have a solid amount of capital built up from grinding as a soft engr, that could be a nice segway for a time.


> Damn crazy. Why did that happen? Moderate burnout situation that went on for way too long? Or intense burnout in a few months?

Basically a combination of both. I was at a medium sized startup fresh out of college, and I was the only one working on a completely new project using a language nobody else at the company used (I was doing NLP stuff in python). There was no code review and next to no mentorship, and every other developer was working in Java/Scala, so they had almost no clue what exactly I was working on. Early on I was actually able to deliver on pretty much everything asked of me, and had one of the models I had trained being used in production within six months. It was this terrible combination of me feeling completely out of my depth, yet everyone else only sees that I'm delivering, so thinks I have everything under control.

I knew very little python or machine learning when I started, but was able to get fairly competent in the problem domain quickly. But as things progressed, my severe lack of experience in developing a large project started to slow progress down and take a toll on me. I felt like I had to keep up the pace I had set expectations with early on, so I just started working longer and longer hours trying to meet deadlines that probably didn't matter anyways. Near the end I was secretly working nights and weekends because I had this mentality that If I didn't someone was eventually going to find out that I had no clue what I was doing. Pretty classic imposter syndrome fueled by perfectionism.

> How's being a bike mechanic money-wise?

Haha, not good. At a shop that pays well, it's around $20/hour after base pay plus commission. It was a nice change of pace though. It made me enough where I didn't have to use too much of my savings. I quit soon after Covid started and have been doing some portfolio projects and brushing up on my interview skills.


Take a break, you must. I know it always feels like you can’t, but you can’t keep working, you will snap.

Programmers are hard to replace, it hard to find a good one, and it takes time to ramp up a new one with a codebase. You have more negotiating power than you think.

Your comment struck me because I have been in that position before, and I know it really really hurts. But you gotta look out for yourself. Please take a week or two off


> You have more negotiating power than you think.

That assumes that their manager (1) is aware of how hard it is to find a good programmer, and (2) is rational.


If either of those conditions is satisfied then imo it's time to go. Who wants to work for an irrational manager? (actual lol)


Agreed. If you can't negotiate where you at, then start the negotiations somewhere else.


Well, only a rational manager knows how hard it is to replace a good programmer...


A discovery by the ASKAP (I work across the road from their data centre, the Pawsey SC Centre), code on GH, data in CKAN. Nice.


I work in a state govt department. Very simple infrastructure additions have paid out majorly for us. It's my job to innovate around research infrastructure, so the following should be read as outcomes of my role, not bragging.

I migrated my division from Word docs on shared drives to Atlassian Confluence Wikis, which made knowledge more discoverable amd accessible.

For a work group, I set up a CKAN data catalogue. Soon after, our division adopted it, and after demonstrating it at a GovHack hackathon, I got seconded to our sister agency to build the first production version of https://data.wa.gov.au.

For a statewide turtle monitoring program, I switched out paper-based data capture with electronic data capture using OpenDataKit. We now have real-time data analysis and reporting. Many colleagues have found a similar need for electronic data capture. Claim to fame: wrote an R package `ruODK` to facilitate data access from ODK to R.


Not mentioned are the fantastic user communities, especially the culture of inclusiveness and openness fostered by RStudio ([code of conduct](https://github.com/tidyverse/dev-day-2019/blob/master/CODE_O...) and [rOpenSci](https://ropensci.org/community/). Basically the inverse of SnarkOverflow.

Especially rOpenSci's peer review process ([more here](https://devguide.ropensci.org/softwarereviewintro.html)) for R packages is fantastic.

I do most data engineering in R (RMarkdown workbooks), and most software engineering in Python/Django. It took three separate, dedicated attempts to get warm with R (pre-tidyverse, showing my age), now I'm interrupting work on an RShiny app to write this comment. The ecosystem around the tidyverse helps immensely to convert my colleague's workflows from Excel to R. Clarity and simplicity wins over purity here (you may now light your pitchforks). And NSE still breaks my brain.


I think the community that R users have managed to create is it's strength. Python has a community of software developers, while R has a community of people who use programming to solve their problems. It's a fundamental difference in mindset, one which really shapes the community.

What also helps is that R is so focused on data and statistics. It gives a focus to the users that really helps when it comes to finding help. Python is famously second best at everything, but that also means it's community is spread thinner over more subjects.


It's this same reason that running anything that depends on R in production is a PITA.


I run R in production and its absolutely fine and wasnt harder than pretty much any other thing in software development.


I didn't suggest it was hard. I found CRAN repos to be insecure and unreliable.


I am not a R user (using primarily julia and python), but can you expand on the insecure aspect of CRAN. Do you refer to (potentially) missing package signing (similar to [1])? I am not aware that python or julia support this either. Or is the software download over ftp/http instead of https?

[1] https://wiki.debian.org/SecureApt


I too got started pre-tidyverse. I've done some minor analysis the last two years and been blown away by how easy it is to get up and running with that code. Way easier than it used to be. I actually bumbled my way through building a simple report building system pre-1.0.0. It was horrible in comparison.

I've gotten some adoption of R Studio at two companies now. It's amazing for exploratory analysis and its cloud capabilities are wonderful.


For context, this dude went on to create software that is used for electronic data capture all over the world, and build one of the most inclusive, diverse, and friendly communities around it I've had the pleasure of participating in. The drive behind his PhD, and what came out of it, made my life and that of many researchers and volunteers in our neck of the woods easier.

This webcast sheds some light on his motivation and perspective: https://www.geekwire.com/2013/geekwire-podcast-windows-8-ash...


The ODK ecosystem (build, aggregate, collect) has been in use for our Western Australian flatback turtle conservation program since 2016, now being used by Dept Biodiversity, Conservation and Attractions staff, community programs and Volunteers across the Kimberley and Pilbara regions. We've captured about 12k turtle tracks/nests in ca 2k hours of logged survey work. Data is ingested into a custom data warehouse, comes out via a RESTful API, is analysed in RMarkdown workbooks with common steps documented in a custom R package.

Widgets for notoriously error-prone data like location and date/time as well as replacing free text with dropdown options where possible made the difference for us.

ODK works really well for us, and the fantastic developer community has been greatly supportive addressing feature requests and bugs (quickest fix: Clint Tseng fixed an ODK Build bug reported mid-workshop within 2h). I'd like to see the industry heavyweights like ESRI being that responsive :-)

Cheers to the ODK community!


ODK founder here. Really glad to hear the tools have worked well for you, and yeah, Clint is awesome!


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: