Saturday, September 23, 2017

Joining two hobbies this time

I am a huge fan of creating forums. They are easy to make but very difficult to make them successful. My first successful site was a forum that grew up to 60,000+ members and thousands of posts.
I also look up hostings and servers very frequently. Even though I do not buy them but still I like to surf around looking at them. I never made a successful website about it though.
This time around I am joining these two hobbies of mine and making a web hosting related forum webhostinghelp.org.
I recently purchased this domain and installed discourse.
I am finding it very comfortable working on it than the one health-related forum I tried to make earlier.
Have any question about web hosting, VPS or dedicated servers you should ask it in this forum.

Sunday, August 27, 2017

Two new websites

I have been planning to do this youtube video making thing for quite some time now and once made one or two videos too. You can find them here. But never managed to do it long term.
I taught in a dental college for 3 years and learnt that most of the students were struggling in my subject human anatomy and it was mostly because we were teaching them in english.
English and all those new words in anatomy were making it very difficult for students to understand things as almost all of the students were hindi speaking.
When I started teaching them in hindi they responded very well.
My classes saw more attendance than other teachers and students learnt and enjoyed far more.
After I left that job I thought about making videos of what I was teaching and make them available for new students. Never managed to do that.
Recently I registered this domain hinditutorial.in and now I am planning to make not only the videos for anatomy students but videos of whatever I know and put them on youtube and on this website too.

And now about the second website.
Recently I started observing that I like to optimize websites for fast loading and actually wasting a lot of time doing it.
As Google also ranks websites with faster loading time higher lots of other people also do that.
So I registered this domain fastwebsite.org and I am going to write whatever I have learnt about website optimization and server optimization for faster websites.

The first website will need a lot of work but the second will not.

Lets see what fate these websites hold.

Sunday, March 19, 2017

I am missing something

I have learnt so much still very little productivity.
I need to figure out what I am missing.

Saturday, March 18, 2017

Political

Most of my life I have been apolitical. I never found politics any enjoyable but in recent years because of all the political discourse on social media I gained interest in it.
I went inactive on Facebook few months before 2014 general elections because my known people started posting lots of fake/propaganda statuses on Facebook and I found it annoying. I left Facebook because if I told them the truth many people will take it as personal insult and if they don’t get offended the discussion will waste a lot of my time. Staying silent was not peaceful for me.
The party who was doing most propaganda actually won in that election.
I thought the propaganda will stop after the elections are over and I will return to the old merry Facebook again. Rather the propaganda became more and more aggressive and that is still going on. This made me sad.
I got more active on twitter as not many of my friends are active there thus less chances of loosing friends there.
Doing so I gained some knowledge about politics and I am finding it rather amusing now. Yes sometime annoying too. So decided to write about my political thoughts so I can get some clarity of mind. This is important because politics is so confusing that you don’t realize when you becomes a hypocrite.
If you support a party you start supporting it no matter what. The party or its leader may be doing wrong but as you are their supporter you find a reason to support them while opposite goes with the other parties.
This time around I am choosing a topic that is in news currently and I think is going to explode in coming elections. I am learning about it and making a blog on it.

Lets see how it goes.

Monday, September 12, 2016

Life is too short to..

Life is too short to be shy.
Life is too short to satisfy your ego.
Life is too short to do things other wants.
Life is too short to not to fight for what you want.
Life is too short to give up something you love.
Life is too short to not to be with people you love.
Life is too short to waste in keep saying no.
Life is too short to not to take risks.
Life is too short to not to make mistakes.
Life is too short to not to play with your kids.
Life is too short to miss the memorable moments.
Life is too short to keep procrastinating.
Life is too short to holding yourself back.
Life is too short to stop your heart take control once in a while.
Life is too short to hold your head high.
Life is too short to have that body you always wanted.
Life is too short to not live the life you should.
Life is too short to keep doing chores.
Life is too short to finding your peace.
Life is too short to keep sleeping.
Life is too short to..

Friday, May 13, 2016

To be successful

You will have to do chores.
You can't be special all the time.
Talent is not enough.
Working hard and learning is not enough.
Success lies in doing routine work better.

Sunday, April 24, 2016

Discourse or nodeBB

Serious confusion.
Can't decide between discourse and nodebb. Discourse is perfect, other then its looks and more importantly its initial load size. Whereas nodeBB is around half in size for initial load but its buggy with many things like mod_pagespeed, Cloudflare etc. All this good in discourse but initial load size is big turnoff for me.
I really liked flarum but don't know when will it come out of beta. I am OK with beta if its working decently but developer themselves are advising strongly against using it in production. So its gone.
While evaluating I am not counting the server requirements here. Nodebb works on far lesser resources than discourse, which won't even start on Server below 1GB RAM and recommended is 2GB RAM. They say even with lesser resources nodeBB can serve far more users than discourse.
After the initial load nodebb and discourse are almost on same speed. May be nodebb is a bit snappier.
What I notice is that while nodebb Developers have focused on all the fancy stuff like chat system, theming, UI etc discourse developers have focused on doing basic forum stuff nicely. Discourse looks very well built and everything goes very smoothly. You get lots of finely thought out functions in discourse whereas in nodebb you get those old controls that we are seeing since vBulletin but mixed with fancy stuff.
With what i have written above you can guess i am inclined toward discourse a little bit. But the main problem is i am planning to build an Android forum and i suspect initial load size of discourse is going to cause some troubles on the mobile devices specially the cheaper ones with less RAM. Even one of the lead  developer of discourse says JavaScript performance on Android device is a serious problem and you are bound to lose visitors who visit your site from Android devices. And here i am planning to build a forum for Android users.
Gotta think more and decide.

Wednesday, March 2, 2016

Clear mod_pagespeed cache

This command I found somewhere on the internet is working for me on my ubuntu 14.04 vps.
touch `grep "^ *ModPagespeedFileCachePath" /etc/apache2/mods-enabled/pagespeed.conf | awk ' { print $2; } ' | sed 's/"//g'`/cache.flush

Monday, January 25, 2016

Reading Parse.com docs

I got less time to do my things today. Most of the day went by playing with my son as maid took leave today.
Most part of the remaining time i read parse docs. Learnt a lots of new things about parse and also got some ideas out of it for my app.
When i turned on my system to work I managed to get the comment thing sorted out.
Actually i never mentioned it before here. So here it goes.
In MySQL i was using id for the content that were integers and they were getting incremented automatically on every new row added. I was using this id in the comments table to label which content this comment belongs to. Easy stuff that is.
But here in parse they use NoSQL database that doesn't give auto incrementing integers as id rather they give a alphanumeric objectId. So if i add a new row to content it will not generate same type of integer id so i will have to use objectId in comment table to link comments to newer content.
Now the problem arises how to write the query because old content will not have new objectId in comments and new on will not have the old content id.
To sort this out i needed to add objectId of the content to all the respective comments. I couldn't do it manually because there were 22,000 comments in all.
I needed an automated approach.
I had two options:
1. I use the cloud code facility that parse provide. To use it i needed to write a JavaScript function and run it on the data.
2. I extend my existing android code and update the ids using the app.
First option was little difficult for me as i have never done any of that stuff before. I mean i never used parse cloud code or the tools required to write cloud code. And also i never wrote such a JavaScript function before. But it could have been a nice learning experience.
I chose second option because it required very less time in comparison to first one and also i could track the changes i was introducing with android logcat, so i would not corrupt the data. Although i backed up all data before hand.
I wrote a java method that pulled all the comments attached to old content id and then update each of them by inserting new content objectId in it. I could have done it to all the data at once but i chose to go with one at a time approach. I tapped on the content and all the comment rows related to that content got updated and i tracked it in the parse interface and logcat window.
Took time but finally managed to update all.
Finally i updated the query to use the objectId rather than old content id in the android app to pull the comments. Working nicely.
Yesterday i updated the android app to send objectId for new comments so nothing was required to change in that method. 
Reading through the parse documents i learnt about the caching the data in device so i won't have to query it every time i needed more data. Nice function. Would use it. It will make things faster. Tomorrow will try to implement this caching thing.
One thing that went unexpectedly nice as i switched to parse is that when i was using JSON to get and sent data to and from app i was not getting the emoji working. They were changing into question marks. But now i can use all the emoji in content as well as in comments 🙌.
Later.