Categories
Geeky/Programming

Hacked!!! iPhone running T-Mobile

well, I did it. Bought a 4GB model, just finished hacking it, I have my T-mobile SIM card in, it makes calls.

Followed this to get it activated

http://www.hackint0sh.org/forum/showthread.php?t=5273

then this to get it unlocked

http://iphone.unlock.no/

EDGE Settings (Not sure if this is the best, but it works)

Settings -> General -> Network -> Edge
APN: wap.voicestream.com
username: [blank]
password: [blank]

Technorati tags: , , , ,
Categories
Geeky/Programming Product Reviews

iPhone Free Unlock? Information is FREE!

Looks like the iPhone Dev Hackers Team has just released the source code for a free unlock so you can use the iPhone with any SIM…how sweet is that? It reminds me of the movie Antitrust – where they broadcast the source code over every device in the world!

http://www.engadget.com/2007/09/11/early-iphone-sim-unlock-open-source-code-released/

http://gizmodo.com/gadgets/exclusive/iphone-free-software-unlock-confirmed-death-star-explodes-298825.php

http://iphone.unlock.no

Now, I have bashed the iPhone recently, and I still stand by that bashing. I hate the fact it is locked to AT&T. I will never get one and activate it with AT&T. But, do I get one and hack the hell out of it? Well, of course. If I can move my SIM from my T-Mobile Dash to the iPhone and back, well that is just awesome. I still think there should be an SDK, hopefully one day there is.

Question is, do you wait for the 2nd Gen iPhones? Do you get one now? I might walk down to the Apple store right now and check them out. Seeing as I can hack it/unlock it, it makes it soooo much more appealing. Here is a screenshot of some code, directly from my computer, love it :

image

Oh, and also an Exec at Apple today said that they are indifferent on 3rd party apps on the phones, which is a good stance.

I still despise iTunes. Next task for the iPhone Dev Team – rewrite iTunes!

Technorati tags: , , , , , , , ,
Categories
Business Intelligence Geeky/Programming SQLServerPedia Syndication

SSAS Cubes – Speeding up Queries and Performance

So, you have a SSAS 2005 (SQL Server Analysis Services) Cube, and its not performing how you want it to. What do you do?

The first thing to look at is your attribute relationships (http://technet.microsoft.com/en-us/library/ms174557.aspx). Make sure you don’t have redundant relationships (AS should warn you as well) By default when you create a cube, and go through the wizard, only the default attribute relationships are set up. What this means is that all attributes are related to the key attribute by default. If you have related attributes, you want to set up those relationships!! This will help in a couple of ways. First, when creating hierarchies, it won’t warn you that you don’t have relationships set up. Second, your aggregations will actually have a better design, Analysis Services will be able to take into account the relationships and your aggregations should hopefully rock!

What’s next? Look at your reports and queries off the cube. Can you redesign them? Are you running some crazy query? Here is a good tip for using sp_create_plan_guide to influence query plans.

My suggestion is to run SQL Profiler and see how your cube is being accessed. Are the aggregations being used? Are things being read from cache? Use the BIDS Helper to take a look at your aggregations and see the row counts and make sure everything is working as you have planned.

Ok, what else? Cache Warming.(http://cwebbbi.spaces.live.com/blog/cns!7B84B0F2C239489A!994.entry) After running Profiler, or even setting up something automated to capture the queries being ran into another table, you can use this info to “warm your cache”. Basically when you process your cube, run the most frequently ran queries automatically so then the next time users run them, it will pull from cache.

Balancing your cache, aggregations and storage design modes is something you seriously want to dig into. Should you be purely MOLAP? Or MOLAP with Proactive Caching? Or do you want to go purely ROLAP or all the different designs in between the two? You want to minimize data latency.

Some of these things often get overlooked when first designing a cube, which then could make it tough to do once you have things deployed to end users. Also, SSAS 2005 isn’t the best at letting you tweak some of this stuff, I watched a presentation on SSAS 2008 by Donald Farmer and things look A LOT better in SSAS 2008, which I cannot wait for!

But that is a post for another day 🙂

Technorati tags: , , , , , , , , , , , ,
Categories
Business Intelligence Geeky/Programming

Scale-Out Querying with Analysis Services

Today, I re-read this best practices article on MSDN – Scale-Out Querying with Analysis Services

The architecture they talk about makes sense. Multiple web servers on the front end, a “query” layer, and processing layer. One thing that I don’t get though is how a setup like that can only support 30-60 concurrent users. I guess I would like to see the numbers on the average concurrent users based on usage. Like how many users on the reports/applications cause concurrent usage? Are connections reused? Etc.

Seems that there could also be a better way than robocopying files around and starting stopping services, but maybe not. Looks like they have an SSIS package that kind of handles it all, which is cool.

Sometimes I wonder though, if these setups are also biased in such a way to maximized the number of SQL Servers (and licenses) that you need to get something like this going. Would be nice to see a study on something like this from a 3rd party, for sure.

Technorati tags: , , ,
Categories
Geeky/Programming Product Reviews

Windows Live Installer Thoughts

The other day, the Windows Live team came out with the Windows Live Installer which basically incorporates all the Windows Live programs into one installer, pretty nice.

Few things though..

1) You can uninstall the installer and it doesn’t ask you to uninstall any of the programs it installed

2) When you run it, it takes forever to find installed programs on your computer

3) Windows Live Writer shortcuts were broken after I ran the installer

4) Windows Live Mail Desktop client – my contacts disappeared!! I put a post up in the forums, looks like others were having the same issue. I uninstalled, re-installed, but the uninstall must not be a full clean uninstall because when I ran it again all my info and accounts were still there, so it much save the info somewhere (in my Docs and Settings, Registry, somewhere – I didn’t take the time look). After fiddling around, removing accounts and what not, they magically reappeared though, so that is good

5) Not related to the release, but I noticed this, the automatic update of Windows Live contacts. There is a checkbox in the contact box in the mail client, if you uncheck, and come back later, it is checked again, ugh!

6) Also, in the mail client, the password doesn’t stop you from opening the application, it is just used for sync stuff. Kind of misleading, I put a bug on connect, but they said it was “by design”. Even though Microsoft will always want people to use multiple profiles on a computer, that is probably a pipe dream, people use one profile and just switch using programs such as mail, etc. Windows Live Messenger allows you to sign in differently based on account, why not do the same for the Mail client?

7) Even though I have gripes above, I still think it is a good thing, The Windows Live suite is coming along. Few things I would like – more options in the contacts, to be able to set other IM addresses per service (AIM, GTalk, ICQ, Yahoo). Also, the ability to set pictures for your contacts would be nice. Also, they need to get the calendar solution going to.

Overall, I love the Windows Live suite, the mail/contacts/messenger/live writer apps are awesome. I use my T-Mobile dash, and with Windows Mobile 6.0, my Windows Live contacts sync to my phone, and Windows Live Messenger integration happens right on my phone, very sweet. I use the mail desktop app on my laptop, it is less bulky than outlook, built specifically for Windows Live (BTW, my main email address is @stevienova.com – I use Windows Live Custom Domains to manage that and integrate it with Windows Live – another sweet product!). Then, when somewhere out and about where I don’t have my laptop or connectivity on my phone, but Internet or another computer, I can use http://mail.live.com to get my mail/contacts. Sweet sweet integration!

Technorati tags: , , , , , , , , ,
Categories
Business Intelligence Geeky/Programming SQLServerPedia Syndication

Business Intelligence and Analysis Services in the "Real World"

A reader sent me an email this weekend:

I wonder if I could as your advice as a BI / Data warehousing specialist.I have been studying Analysis Services recently having read a couple of books Which step me through the process of building the cubes etc but as I don’t come From a DB background one thing is not clear to me is how does one determine that They need to use BI / Analysis Services etc in the real world? As you,  I am a .NET developer with a background of building thick client apps and am  Familiar with creating layered architectures etc building on frameworks like NHibernate  Etc to abstract out the DB stuff into my more familiar object world.   My question how does one Generally interface with this Data Warehousing / Analysis Services stuff in the real world? I am looking for answers from people who have used these technologies in anger and not Like me from canned text book examples scenarios etc. Thanks for your time it is would be appreciated.

 

And I wrote an response, but after reading the response I figured I could post it up here as it is pretty general.

Basically what I have seen is this. You make your application (either web or windows) that saves transactional data, or logs, or something like that. End users usually want reports off of that data. At first, developers will report directly off that data (OLTP database). It becomes slow, and unusable after tons of data is there, so then developers tweak timeouts, things like that. Then the next step is custom summarizations into other tables, and then archiving off transactional data. Usually, because developers don’t know about data warehousing/BI stuff, all this stuff is custom up to this point.

 

Eventually, someone realizes that, “hey, there is a way to do this better”, which involves a structured ETL either using stored procs or SSIS or something similar. Also, instead of just ad-hoc or custom summarization tables, a well designed data warehouse (OLAP) database is key.
Now, from there, you can write your reports off your OLAP database, which is OK because the data is summarized, scrubbed, etc. But you really give it an adrenaline boost when you create a cube off that data warehouse OLAP db, it takes care of the summarization, the relationships, all that. You put the reporting in the hands of your end users (excel 2007 for example) – let them pivot and slice and dice the data, its all ready and set for them to do it, with really nothing you have to do on your end except make sure the cube is processed regularly off the DW.

You are basically abstracting your OLTP data up two levels… In all reality you should be able to query your OLTP data for a time frame and get say revenue, and then query the OLAP and the CUBE and get the same results. Now, with your cube, you can still access data from it in your .NET apps using AMO, which is cool as well, or you can write Reporting Services reports directly off the cube as well, makes it a lot easier than writing custom .NET reports.
So, interfacing with your Data Warehouse, the best options to get data in is usually SSIS packages or stored procedures, no .NET coding really. To get data out, you would probably want to use Reporting Services, or you can query it with SqlClient in .NET apps like you would a regular OLTP database.
The cube, you can get data out using AMO objects in .NET, you can query using MDX, XMLA, etc in management studio, or you can write reporting services reports, but the best client is Excel 2007, its built to be tied to SSAS 2005, so it really works out well.

One thing about all the technologies (SSIS, SSRS, SSAS, AMO, etc) is that there really isn’t a lot online as far as examples and documentation, or it is scattered. It is getting better though. Most of the stuff I do I just have to figure out on my own, through trial and error, but it is OK.

Maybe not the cover all response but it kind of covers what I have seen in the past, from my own experiences, and others.

Technorati tags: , , , , , , , , , , , , , , , , , ,
Categories
Business Intelligence Geeky/Programming SQLServerPedia Syndication

SSASUtils: SQL Server Analysis Services Utilities – CodePlex

So, today I decided to try out Microsoft’s site: CodePlex. I recently created a utility app to process dimensions and partitions in SSAS (SQL Server Analysis Services) because I didn’t like the way it worked in SSMS (SQL Server Management Studio). I don’t know because I never used it, but I guess in pre-SP2 you could process multiple objects at the same time, just hit process, move on to the next one. In SP2, the process dialog is modal so you can get around it, you have to wait for the object to process – yuck!

Also, I just wanted to try out CodePlex and see how it works, what I like and don’t like. Since becoming a contractor doing Data Warehousing and BI stuff, I miss coding in .NET (and any other language), so I want to keep that up in my free time. This is a result of that. Hopefully once I get used to CodePlex I will contribute to some other Open Source .NET Projects, sounds like fun to me!

Here is the link to the project: http://www.codeplex.com/SSASUtils

Some of the glue code for connecting and processing I gleamed from other examples and projects I have seen around the web, some in VB.net , some that didn’t even work, etc. Hopefully more SSAS Utils can be added to this project and it can become way more useful that it is now (although I do use it pretty much every day right now).

CodePlex: I like it so far. There are few things that could be done better, but I am using the Team Explorer source control which fits nicely into VS2005, really cool. I will probably post up more on CodePlex later. If I get the urge, I might create project for some other stuff I have lingering around my hard drive (FFMC, PocketBlogger, other random utils). I am anxious to see what the community participation is like, I tired GotDotNet back in the day and it was weak, we will see with CodePlex.

Technorati tags: , , , , , , , , , , , , , ,
Categories
Business Intelligence Geeky/Programming Product Reviews SQLServerPedia Syndication

Reporting Services Scripter: Sync Reporting Services Instances and Objects

The other day, I was tasked with moving all objects from one SQL Server Reporting Services instance to another. I know you can move the database itself, but then you run into issues with encryption keys etc. I just wanted to move the objects. I know that pretty much everything in SSRS is extensible, so I knew I could write something to do it, but before I went out and coded it, I Googled first to see if someone else had something. Turns out there is an awesome utility: Reporting Services Scripter. Works like a charm!

Technorati tags: , , ,
Categories
Geeky/Programming Product Reviews Random

Facebook: Signing up can be tough if..

Your last name is “Gay”

I asked a buddy of mine, Joe Gay (yes that is his name), “why aren’t you on Facebook yet”, and his response was, “They won’t let me sign up, they won’t allow my last name”

What gives? That is his name, they should allow it. He shouldn’t have to email customer support to sign up.

So, what do we do? Put Gaaay instead Gay. That gets through. But in the process, accidentally picked the wrong year for his birthday.

Now, what is even better, is that you can’t update your name or birth year once you are logged in. Well not easily anyways. From the help page

Did you misspell your own name? Are you tired of that embarrassing nickname? You can request a change from the “Settings” tab on the Account page. For quality control purposes, we confirm all name changes before they take place.

But I suppose they will get bucky again about his last name

Same thing with the birth year

You can edit the month and day of your birth from the “Basic” tab of the Edit My Profile page. For security reasons, Facebook Customer Support reviews all requests for edits to your birth year. To submit a request, click here.

Facebook really should let users edit this information, instead of them having to send an email off to customer support, it just doesn’t make much sense.

Technorati tags: , , , , ,
Categories
Geeky/Programming Random

Route: Saturday Night Programming after the bars..

OK, I have to admit, this is weak. But, if you want to learn how to create an infinite loop, with one word, this is it. Route.

I happened upon this maybe 5-6 years ago, when we ended up having to set static routes on computers because of some goofy office politics, but anyways..

Create a batch file. Name it route.bat. Edit it, type in the word route. save, exit, and run it. Infinite loop.

image

Fun stuff. Not bad for an after the bar exercise..

Technorati tags: , , , ,