Instagram is a simple and fun application. The simplicity of the application is what led to its success. It is extremely addictive.
However, its most important feature or lack thereof, is the regram functionality. Instagram doesn’t allow users to just repost the same image from another user natively. The absence of this functionality is just wonderful. Users can definitely install third party apps that support this functionality, but, Instagram doesn’t support it natively.
As a user, your feed is usually pretty clean. There’re no non-sensical memes or random images showing up in your feed. You definitely can subscribe to them, but, you don’t see them unless you specifically subscribe to them.
Personally, I think this is great. It keeps the app very focused and clean.
A while ago, I wanted to build a data aggregation service that’d allow its users to fetch data from a set of data sources defined by them. I wanted to allow the users to configure the data fetch interval for each source. This led to the birth of the Dashboard project.
Dashboard is a data aggregating web application that provides a way to customize and display the aggregated data. It’s an open source project. The code is hosted on GitHub.
Webhook support to receive data
Fetch data from various sources at different intervals
Plugin support to enable extensibility
Dashboard can be used to display any arbitrary updates from various sources. Some specific use cases of Dashboard can be –
Keeping track of health of endpoints
Display data received from Git hooks
Monitor blogs for updates
The possibilities are endless.
The application backend is written in Go. For this use case, Go fits perfectly well and I really like Go. The current implementation of frontend is in vanilla JS (I feel primitive just saying that 😜). However, I do plan on using Vue or Preact.
For details regarding the future of the project and more, please check out the README file of the project.
Before I started working on this project, I made sure I focused on 3 things:
Every time I took a decision around a particular feature implementation, I went through this list to ensure none of these aspects were sacrificed.
Simplicity: I wanted to make the app very simple to setup, configure, and use. I put in a lot of emphasis on the simplicity of the application. There is no database. The installation is pretty straight forward. Just download the binary file and run it. Thank you, Go!
Extensibility: I made sure to allow users to write their own plugins. These plugins are shareable. Users can display data from whichever source they want to via these plugins.
Data parsing/display: Once we fetch the data from a source, we need to have control over which parts of it we want to display in the UI. The user should be able to display only the data that matters. Right now, this is static. But, I’m working on a solution to allow users to map data.
The project is under development and is still in Alpha stage. I plan on working on it in my free time. Any contribution to the project is welcome.
After, what seemed like a long wait, WordPress 5.3 is finally here. Right on time. Congratulations to the WordPress team. I just finished upgrading my blog to the latest version of WordPress. I’ve been waiting to try out the final version of the brand new TwentyTwenty theme that ships with the latest version of WordPress.
My blog is currently running the TwentyTwenty theme. There are a few noticeable UI glitches, but, I’m OK with them. I definitely don’t want to switch back to the old theme because of these bugs. I’m sure these will be fixed soon. I haven’t investigated these bugs yet. These could even be caused by any of the plugins I’m using.