Why are CEO's held liable for any action that their company takes (Sarbanes-Oxley), but public officials aren't even responsible for their own actions (qualified immunity)?
http://www.scotusblog.com/about/petition-of-the-day-explained/
Wednesday, February 08, 2012
Question of the Day
Posted by
Chris
at
10:11 PM
0
comments
Links to this post
Wednesday, February 01, 2012
Please God No
I got an email from Consumer Reports today advocating tighter regulation of medical devices by the FDA. Here is my response with a copy of the original email below:
Posted by
Chris
at
10:30 AM
0
comments
Links to this post
Labels: economics, healthcare, libertarian
Thursday, October 06, 2011
XBMC Issues Pausing With Remote SMB
I love my XBMC and have had great success sharing a single datasource and database across multiple clients.
With one exception – my linux box doesn’t like it when you pause TV and movies when the video file is on a remote SMB share – whenever you try the videos stop playing. Manageable, but it annoys my wife.
I think I finally fixed it. I created a symbolic link on both the Windows and Linux clients so that XMBC thinks that the file is a local path. This is necessary because all of the clients need identical paths to the video files in order to share the common database.
So far so good, I can fast forward, rewind, pause and the videos seem to handle it fine.
Posted by
Chris
at
10:37 PM
0
comments
Links to this post
Sunday, August 14, 2011
MDL: Optimizing XBMC
There are a number of tweaks that I had to make on XBMC to make it work a little better with my setup.
First – since I am using MySQL I had to add some indexes and make a small change to the MySQL server.
By default it appears that MySQL wants to do a reverse DNS lookup to all client connections. This makes the initial connection very slow, to disable this behavior add the following to my.ini in the [mysqld] section:
skip-name-resolve
The following indexes also improve performance:
use XBMC_video;
ALTER TABLE movie ADD INDEX idMovie(idMovie);
ALTER TABLE movie ADD INDEX idFile(idFile);
Another change that is essential because of the shared MySQL database is the sharing of the thumbnail directory – otherwise the thumbnails will only appear on the XBMC client that discovers the media. To get around this I created a symbolic link on the Linux box to the shared Thumbnail directory on Windows.
Connecting to Windows shares from Linux has caused me all sorts of issues. I initially tried mounting shares in fstab, but if the Windows box wasn’t available during Linux boot the shares were unavailable. I switched to automounter which resolved the issue.
There are some other SAMBA tweaks to improve performance – in theory this was supposed to prevent video from stopping if it was paused or looking at info. So far it is only partially successful.
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
Finally, ever time I upgrade something in XBMC or a supporting component the autostart fails to actually, you know, autostart XBMC. To fix this edit the /etc/uxlaunch/uxlaunch file with the correct home directory.
Posted by
Chris
at
10:05 PM
0
comments
Links to this post
Labels: HTPC, MDL, mySQL, technology, XBMC
Sunday, June 26, 2011
MDL: Backing Up to Flickr Part I
For better or worse I’ve decided that I would use flickr as my photo backup solution. For one, it’s not terribly expensive – around $30 for unlimited storage – and it makes picture sharing pretty easy. There are privacy concerns for some, but I’m simply not sure that I care.
The downside is that there aren’t really any tools out there that automate sending the pictures to flickr. Foldr Monitr comes close, but its buggy, isn’t updated anymore and I just don’t like the choices that it has made.
After about two years of complaining I guess I’ll just have to handle the problem myself. Odds are that you won’t like the choices that I’ve made, but hopefully I’ve given you enough pieces that you can make the necessary modifications without having to start from scratch the way that I did.
You are going to need a database of some kind to keep track of everything – I have a copy of MySQL running already for XBMC so that’s what I’ll use. I’m also going to use PowerShell since that is what I know which means that I’ll have to install the ODBC driver for MySQL.
Finally, I suck as a programmer. Don’t use any of this code with the expectations that you’ll learn how to get better at scripting. Also, don’t point out how if I changed some bit of code around it would be SOOO MUCH BETTER! I don’t care – if my code functions for me, inefficient or not, I am quite content.
So be warned – this thing works for me and my needs 95% of the time. And if I run across an anomaly where it doesn’t do what is expected if x & y are true – I stop doing both x & y at the same time. The chances that I’ll update the script to accommodate your special circumstances are pretty damn rare. And adding any functionality at all is all but unthinkable.
All that being said, feel free to borrow the code and adapt it to your own purposes – you just can’t take this and put it into something that you are going to sell. And if you update the scripts for public consumption – please give me my due by linking back here. Obviously while noting how crappy the code is and how much work you had to put into it to make it semi-functional for a normal human being.
Part II will get into the script and perhaps the database – assuming that I actually finishing writing the god damned thing.
Posted by
Chris
at
5:46 PM
0
comments
Links to this post
Labels: flickr, HTPC, MDL, mySQL, PowerShell, technology
Sunday, May 22, 2011
How Microsoft Can Become More Interesting
Paul Thurrott asked the question “How Can Microsoft Fix Microsoft?” - here is my take.
I believe that one of the things that makes Microsoft less 'interesting' than other tech companies is the reliance on being predictable for businesses. Large organizations simply can’t tolerate constant churn in its core technologies – they have a hard enough time simply keeping up with the plodding pace of change as it exists today. I think that Microsoft can take a lesson from open source projects and offer frequent innovations while maintaining the predictability that large organizations need.
The key is to offer frequent updates, say every six months but only offer long term support on a subset of those releases - every four releases for example. This would allow Microsoft to try more experimental features and observe how well they are received in a community that is more forgiving of constant churn while maintaining predictability for its largest customer base.
This approach would avoid forcing Microsoft into splitting its products into separate governance models for different product lines (one of the things that I think slow down development cycles on products like Live Essentials and Windows Phone) and hopefully speed up the rollout of interesting technology for those of us that are enthusiasts.
Posted by
Chris
at
11:56 AM
0
comments
Links to this post
Labels: Microsoft, technology
Monday, July 05, 2010
Why Students Hate School
Most students hate school because they believe that it is intended to build human capital but all of their classes have near zero real world application.
Since the classes are worthless they feel like they are wasting their time learning things that they don't need.
If students understood more clearly that the goal of school is to get through school they would have an easier time putting up with the nonsense. But, if too many understood this the value of the signal would likely diminish.
Posted by
Chris
at
11:10 AM
0
comments
Links to this post
Saturday, May 08, 2010
MDL: Script to Convert MPG to AVIs
The MPG videos that I have are not getting along with XBMC. To get around this I need to convert them all to AVI format.
avidemux has a great command utility and PowerShell has the power to batch the process.
$avidemux = New-Object System.Diagnostics.ProcessStartInfo
$avidemux.FileName = "D:\avimux\avidemux2_cli.exe"
$avidemux.windowStyle ="Hidden"
foreach
($SourceVideoFile in (Get-ChildItem @("D:\videos\") -recurse -include @("*mpg", "*.mpeg") | sort-object name))
{
$SourceVideoFile.fullname
$avidemux.arguments = "--autoindex --load ""{0}"" --save ""{1}"" --output-format AVI --quit" -f $SourceVideoFile.fullname, ($SourceVideoFile.directoryname + "\" + $SourceVideoFile.basename +".avi")
$avidemuxProcess = [System.Diagnostics.Process]::Start($avidemux)
$avidemuxProcess.WaitForExit()
}
All done! The videos all converted in a couple of hours.
Posted by
Chris
at
9:14 PM
0
comments
Links to this post
Labels: HTPC, PowerShell, XBMC
Saturday, April 03, 2010
MDL: How to Share Databases with Multiple XBMC HTPCs
I’ve raved about how great XBMC is already. Just to demonstrate how truly great it is, I went out and bought a Nettop so that I could install XBMC on my primary TV.
The one problem with this setup is that each install of XBMC maintains a separate database of content. This is problematic for a couple of reasons.
First, I have OCD really bad and it bugs me beyond belief if the pictures, posters and details associated with all of the music, movies and TV shows are out of whack.
Second, XBMC keeps track of what you have already watched and you can choose to hide that content if you wish. This feature isn’t all that useful if it only tracks watched content on a TV by TV basis.
So what is the solution? It turns out that XBMC can be configured to run off of MySQL. And since MySQL is designed for use by more than one connection, more than one XBMC can be setup to use a single database!
I am well adept at Google-Fu but couldn’t find any decent documentation on how to set this up so it took me some time. But don’t fret, my sweat is your gain.
Step 1: Download and install MySQL (default everything is fine). I’m running Windows so downloaded the Windows Community version 5.1.45. The instructions will reflect this setup, but if you are running linux you should be smart enough to translate from Windows to *nix anyway.
Step 2: Once MySQL is installed and running, log into the database by opening a command prompt and typing: ‘mysql –u root –p’
Step 3: Create a user xbmc with password xbmc: ‘CREATE USER 'xbmc' IDENTIFIED BY 'xbmc';’
Step 4: Create a couple databases:
“CREATE database xbmc_video”
“CREATE database xbmc_music”
Step 5: Grant the new user access to create and modify a new database: “GRANT ALL ON *.* TO 'xbmc';”
note: yes, I am fully aware that there are more secure ways to accomplish this, but its a media database for Christ’s sake!
Step 6: Create a file called advancedsettings.xml and place it in %appdata%\xbmc\userdata\
Step 7: setup advancedsettings.xml to look just like this. Note, if you didn’t follow my directions exactly you will need to modify the details to make your setup.
<advancedsettings>
<videodatabase>
<type>mysql</type>
<host>localhost</host>
<port>3306</port>
<user>xbmc</user>
<pass>xbmc</pass>
<name>xbmc_video</name>
</videodatabase>
<musicdatabase>
<type>mysql</type>
<host>localhost</host>
<port>3306</port>
<user>xbmc</user>
<pass>xbmc</pass>
<name>xbmc_music</name>
</musicdatabase>
</advancedsettings>
Step 8: Start XBMC and it will create the database for you.
Step 9: Configure advancedsettings.xml on your second copy of XBMC making sure to change the ‘host’ entry to be the IP address of the computer hosting MySQL.
And there you go, a single copy of the database that can be shared by many computers running XBMC!
If you have spent a lot of time getting all of your metadata setup exactly the way that you want it, you can export the library before you start and import it when you are complete so that you don’t have to start over.
I also discovered one last benefit to sharing a DB on multiple computers. The ‘New Content’ is synced on all of the hosts if you have that feature turned on.
One final gotcha – if you are using Windows you have to setup your content using SMB shares and not local drives. XBMC doesn’t handle the ‘/’ characters correctly yet in MySQL.
Enjoy! Hopefully I saved you a little time.
Posted by
Chris
at
9:04 PM
1 comments
Links to this post
Sunday, March 21, 2010
Healthcare Predictions
With ObamaCare ready to pass here are my predictions on what its effects will be:
- Higher Insurance Premiums
- 10s of millions of people still uninsured
- It will cost more than initially claim leading to spiraling government debt
- Zero change in the rate of change for life expectancy
I know the above will happen, I only suspect the following:
- Decreased innovation (measured by fewer patents)
- Medical clinics legislated into oblivion
- Increased regulation: limiting competition for doctors, pharma and hospitals
Even with the above failures, proponents will demand more government interventions, failing to admit fault and rolling back their mistakes.
Anyone care to make a wager?
Posted by
Chris
at
9:44 AM
0
comments
Links to this post
Labels: healthcare, ObamaCare, politics