Interesting Implications

5/5/2013 - State of WebRTC DataChannel Support - 2013-05-05 00:08:21

Supported: Firefox Nightly & all version of Chrome.

The good news is that the difference between Firefox Nightly and Chrome are no longer significant. Having just made rtccopy.com (a website that allows files and messages to be transmitted over this WebRTC) firefox nightly compatible, the modification was actually fairly straightforward.

Here are the differences that I currently see:
1) The function window.PeerConnection in Chrome is called mozRTCPeerConnection in Firefox Nightly.

2) The function RTCSessionDescription in Chrome is called mozRTCSessionDescription in Firefox Nightly.

3) Differences in supported protocols. Firefox nightly supports both reliable(TCP) and non-reliable(UDP) connections while Chrome only supports non-reliable(UDP) connections. Because of this, you must use this SDP hack to allow Chrome to send more than 30kbps.
Also, as shacharz mentioned here, there are different options when configuring reliability with createDataChannel:
"Chrome:
unreliable: { reliable:false }
reliable: N/A
Fx:
unreliable: { outOfOrderAllowed: true/false, maxRetransmitNum: 0 }
reliable: {}"

As always, PeerJS has a great page dedicated to the status of WebRTC implementation.

-- comment(0) --

The most awesome plugin you have never heard of - Ming - 2013-05-04 23:25:28

Ming, an underutilized plugin is, simply put, awesome. It allows the web developer to create flash programmatically with PHP among other uses (it's worth noting that it's written in C and has a wrapper for C++, PHP, Python, Ruby, and Perl). This post is focused on it's use with PHP.

It does however suffer from a lack of support. The last commit was more than a year ago - https://github.com/libming/libming/commits/master. It is still functioning though and is relatively easy to get working within your Apache/PHP setup:
(with php5 & Ubuntu): sudo apt-get install php5-ming

Once you restart you Apache server, you are ready to produce your first flash movie using PHP. The one trick to know is that you are actually using a PHP file as a .swf file, so you are going to want to embed the php file in much the same way as you would with a .swf file. Also, you are going to want to change the header type of the PHP file using header("Content-type: application/x-shockwave-flash"); .

I would recommend starting here for some great examples about what is possible - http://www.gazbming.com/
There is also full documentation here - http://docs.php.net/manual/en/book.ming.php


A while back for one of the first web development projects I ever attempted, I created http://www.icanimate.com. It allowed users to create, frame-by-frame an animation that then was rendered using Ming. It worked (see example below). I have fully opened-sourced the rendering engine that inteprets a simple rendering format. It is now available online here - https://github.com/erbbysam/ming-icanimate

    
    
    
    

-- comment(0) --

What happened to Blink Personal - 2013-03-17 13:12:46

Blink Personal (by eEye, recently acquired by BeyondTrust) is a great product. For only $25 a year, you would get a functional/fast firewall, antivirus, intrusion prevention, and a few other smaller features. 

This was a great deal, full stop.

With their recent acquisition however, this product stopped functioning for me and I was no longer able to upgrade as their store appeared broken (as of 3/17/13, it's still listed at http://shop.eeye.com/store/eeyeinc/en_US/pd/ThemeID.21445600/productID.220794600). 

So I contacted support and received the following response from support at beyondtrust.com:

"Blink Personal version is no longer available and discontinued - Now we have the product called "PowerBroker Endpoint Protection Platform for Desktops" available at the web store, which is the re-named and improved version of Blink."
(only a single paragraph from the email)

Anyways, PowerBroker can be found here - http://shop.eeye.com/store/eeyeinc/en_US/pd/ThemeID.21445600/productID.220795300. I purchased it and it appears to be roughly the same, awesome product (with a different name obviously). It does cost $59 a year which is a bit more expensive and puts it in the same ballpark as the equivalent Norton ($49) and Kaspersky($75) products.

Anyhow, the reason why I like this is I'm a huge fan of a single personal computer security solution because it means I don't have to piece it together, and I have found their Windows firewall to be one of the fastest in-computer solutions for gaming where speed is necessary (I tried demo versions many others before I settled on Blink Personal) and has a white-list-allow-only option (ie. it will only allow programs to connect you have said is OK). I don't have numbers to back that speed claim, besides my own experience.

Anyways... that is what happened to Blink Personal.

-- comment(0) --

How I got away from WordPress (with code) - 2013-02-24 13:30:08

This post explains why and how I stopped using WordPress & how you can do it to without losing your WordPress admin interface.

Please note that this code has been described as a "turd". While I am tempted to agree, it suits my needs, and I completed my challenge of replacing my wordpress setup with a single file. Therefore, I perfer to think of it as a "polished turd."

Back Story

I needed a blog up, quickly. Simple solution, drop in WordPress, a few hours of stringing together plugins and BAM, I had a functioning website. Flash forward, this blog has become slow... really non-responive. Now what? The page load times are getting incredibly slow. Time to upgrade past a 256MB host. WAIT! Why is this site so slow? http://codex.wordpress.org/Database_Description shows the basic's of WordPress's back-end. It's not complex and a typical LAMP server is setup to get something out of a database and onto a page very quickly. So, just to prove WordPress was slow, I redid this blog - blog.erbbysam.com. WordPress is clearly the culprit here as I was able to read and display data 56 times faster(see below) with a simple script. This gets more to the point though, WordPress is slow. Also, WordPress is consistently plagued by security problems(https://www.google.com/search?q=wordpress+hacked). In order to avoid these security pit-falls I needed to constantly update the server, so why not utilize that time to implement this simple script below and keep it as simple as possible to avoid security holes while vastly improving performance?

How-To

This is a how-to guide on how to replace your WordPress setup with a single file: 1)download index.php from https://github.com/erbbysam/blog 2)simply copy your entire WordPress setup to another directory(ie. 'old-wp'), then modify the value of "siteurl" in the wp_options table to be this new directory. Putting this behind a .htaccess password protection (http://www.htaccesstools.com/articles/password-protection/) now only you can access this potentially unsafe WordPress install, and you can continue using it's admin interface. 3)Then place this new, single file index.php in the old WordPress directory, configure the values at the top of the file(DB connection,Google Analytics key). 4)you now have a working, fast, WordPress display. There are numerous features, but also many missing, feel free to modify it, but hopefully the code is simple enough to understand and modify. A short list of features: -paging -displaying the entire blog (separated via paging) -commenting -displaying individual blog posts with comments

Speed improvement

new code: WordPress: The WordPress loading time was 56 times slower on a 256MB dedicated Ubuntu virtual host. That's significant. A few useful links: http://fpt.pingdom.com/ <-- speed analysis https://developers.google.com/speed/pagespeed/insights <-- speed analysis

-- comment(0) --

Low powered kernel performance testing - 2012-01-08 14:17:57

Testing various linux kernel's performance on low powered CPU's -
http://erbbysam.com/kernel_perf/

-- comment(0) --

-next page->

The views expressed here are strictly my own. © 2007-2013 Sam Erb