Sunday, June 19, 2016

Google cast (Chromecast) extension is hidden

If you've started seeing this new chromecast popup you are no longer using the extension but using the built in chromecast extension. You won't be able to see it using chrome://extensions/

If you want to use the extension and not the built in extension turn it off. Open chrome://flags/#media-router and disable it and you will be able to use the extension you can download from the chrome webstore.

Wednesday, February 24, 2016

Birthday and the year gone by

Its been almost 2 years since I last posted anything here. But now if I ever go through my old posts I can re-live those moments. The past year has been good and stable. I've been off Facebook and most other social networks. Its not that I've deleted my accounts there but I log in there once in a while. I've removed all the apps from my phone so that I don't get any notifications. That has made a lot of change in the way I think. I am not constantly trying to go back there and like a post or read something interesting that is in my notifications. I just don't get any notifications that can get my attention. I wanted to make a Facebook De-Addiction extension but that's on the TODO list for now and ever. My time on twitter is not more than a minute every few days.

The growth on pics.fefoo has been quite a bit over the last few months and all thanks to the responsive style-sheet that I was able to add one of the weekends. Now half of the traffic is from Mobile and Tablet. While earlier it was 10% of the traffic. That has been a major jump.

I've been working from home for a really long time now. I don't think I remember how offices work any more. Working from home really gives you the flexibility to work but you also end up putting more hours at work than you would in a normal office so work-life balance can go for a toss at times. I have been trying to follow a routine but most of the times it just does not work that way.

As for personal projects I was only able to work on pics.fefoo the rest have been languishing for attention. I really hope I can get a few weekends to finish off the next version of as its a little too dated now and needs a major rewrite. I was able to give some time for myPublicDrive but its nowhere near completion and Google has already deprecated one of the most important piece of the puzzle so I have to think over it all over again to make it viable. But then again I only have that many free weekends. Here is hoping I can take out a day each weekend to work on these things and a lot more of my procrastinated projects.

Thursday, July 31, 2014

Using YQL servers as proxy to load resources cross domain

To load a HTML5 file from another domain use this query.

select * from html where url="" and compat="html5" and xpath='*'

This will return the whole HTML page in the results tag of the generated XML. If you want to use JSONP just add a "callback=[funcName]" query parameter in the end and instead of an XML a JSON will be sent out. Here is an example of how it will be sent out. I am using callback function as "test". Depending on which framework or library you are using you will need to set it accordingly.

Also the YQL servers support CORS so it won't be that difficult if you do a direct XHR to get the file instead of using script tags for JSONP. I also tested it using text files and they can also be downloaded using this method.

If you want other types of resources which are less than 25KB you can use another YQL query to get the results.

select * from data.uri where url=""

This only works for resources which are less than 25KB. But here it could be an image or any other resource and it will work.

Tuesday, September 24, 2013

Using CONNECT method on a http proxy using telnet

The simplest way to connect to an external server using a proxyserver.

C:\Work>telnet proxyserver 8080
Connected to proxyserver.
Escape character is '^]'.

HTTP/1.1 200 Connection established NOTICE * :*** Looking up your hostname... NOTICE * :*** Checking Ident NOTICE * :*** Found your hostname NOTICE * :*** No Ident response

In this case we are connecting to a proxyserver on port 8080. After that we open a http tunnel to on port 6667. Then you need to press enter twice to establish the connection. After that you have an open socket and you can send the commands accordingly based on the protocol being used. Here we connect to an IRC server.

We could do the same thing by connecting to a HTTP server. You can apply the logic by opening a socket to the proxy server and then sending and receiving over the socket if you are doing socket programming. The only extra things you need to take care is to open the tunnel the rest of the logic remains the same.
C:\Work>telnet proxyserver 8080
Connected to proxyserver.
Escape character is '^]'.

HTTP/1.1 200 Connection established

GET / HTTP/1.0

HTTP/1.0 200 OK
Date: Tue, 24 Sep 2013 08:34:43 GMT
Expires: -1
Cache-Control: private, max-age=0
Content-Type: text/html; charset=ISO-8859-1
Set-Cookie: [a dozen cookies]
Server: gws
X-XSS-Protection: 1; mode=block
X-Frame-Options: SAMEORIGIN
Alternate-Protocol: 80:quic