升级你的iPhone OS到3.0吧
iPhone OS 3.0 早早已经release了, 但是由于破解还没有出来, 所以迟迟不敢更新. 3.0 增加了很多很酷的功能, 具体可以参考官网的介绍. 现在破解已经出来了, 按照以下的步骤, 你就可以尽情享受3.0带来惊喜了!
- 将iPhone连接到iTunes上, 然后在”摘要”页面点击”更新”, 此时iTunes就会下载更新软件并自动安装到你的iPhone, 由于软件比较大(两百多兆)所以这个过程比较漫长. 同时这个OS还需要iTunes版本在8.2以上, 如果你的iTunes版本低于8.2, iTunes会要求你更新, 这时就乖乖地听它的话吧!
- 系统更新完会自动重启. 完了一个新的软件Voice Memos赫然出现在我面前, 玩弄了一下发现操作简单,音质不错, 然后再瞄了一下短讯功能, 发现打开短讯速度有所进步, 而且增加的复制粘帖功能更体现其人性化. 但是有使用Cydia软件的用户会发现Cydia不见了, 如果你需要用到这个软件, 就要将iPhone刷一次了
- 刷机需要破解的工具redsn0w, 下面提供了下载redsn0w_0.7.1.zip的地址, 打开redsn0w, 它需要导入一个ISPW的文件, 这个文件在刚刚更新iPhone的时候已经产生并放置在username/Library/iTunes/iPhone Software Updates里(MacOS用户, 至于Windows用户的ISPW估计路径也差不多), 若文件夹里面有几个ISPW文件, 请选择最新版本的iPhone1,1_3.0_7A341_Restore.ispw文件, 然后按照提示进行破解即可.
下面提供下载redsn0w的地址, 链接地址取自http://blog.iphone-dev.org/post/126908912
适用于Mac 操作系统
- 官方链接
- http://www.chemicalwebs.com/redsn0w/redsn0w-mac_0.7.zip
- http://download.server-land.com/redsn0w/redsn0w-mac_0.7.zip
- http://therepository.binarytide.com/redsn0w/redsn0w-mac_0.7.zip
- http://www.bielsipod.de/Daten/redsn0w-mac_0.7.zip
- http://necoda.com/redsn0w-mac_0.7.zip
- http://g.appleguru.org/redsn0w-mac_0.7.zip
- http://download.desteini.com/mac/redsn0w-mac_0.7.zip
- http://schaffnerd.com/redsn0w/redsn0w-mac_0.7.zip
适用于Windows 操作系统
- 官方链接
- http://www.chemicalwebs.com/redsn0w/redsn0w-win_0.7.1.zip
- http://intern.datentankstelle.at/iphone/redsn0w-win_0.7.1.zip
- http://www.gotokohsamui.com/redsn0w-win_0.7.1.zip
- http://www.bielsipod.de/Daten/redsn0w-win_0.7.1.zip
- http://cligs.ee/assets/redsn0w-win_0.7.1.zip
- http://72.14.179.250/Downloads/redsn0w-win_0.7.1.zip
- http://www.andygo.de/redsn0w-win_0.7.1.zip
- http://linhsex.net/data/redsn0w/redsn0w-win_0.7.1.zip
How to install Paperclip
Paperclip is a plugin for Ruby on Rails’ ActiveRecord that lets files work as simply as any other attributes do. Installing Paperclip itself is simple and quick. But before you can use it, you have to install a couple of libs and softwares.
1. MacPorts
The MacPorts Project is an open-source community initiative to design an easy-to-use system for compiling, installing, and upgrading either command-line, X11 or Aqua based open-source software on the Mac OS X operating system.
Make sure Apple’s Xcode Developer Tools is installed (most of the developer would), you can find it at the Apple Developer Connection site or on your Mac OS X installation CDs/DVD. Download disk image from MacPorts offical site, double click the pkg file in the virtual disk to start installation. Notice:The installation may look like “hang up”, be patient, the “successful install” message will show up within five minutes. But you need to install more libs for MacPorts manually. Open Terminal application and type “sudo port -d selfupdate”, it will finish the rest.
2. ImageMagick
ImageMagick® is a software suite to create, edit, and compose bitmap images. It can read, convert and write images in a variety of formats (over 100) including DPX, EXR, GIF, JPEG, JPEG-2000, PDF, PhotoCD, PNG, Postscript, SVG, and TIFF.
This is what Paperclip based on. Installing ImageMagick via MacPorts is suggested. Open Terminal application and type “sudo port install ImageMagick”. The port command downloads ImageMagick and many of its delegate libraries (e.g. JPEG, PNG, Freetype, etc.) and configures, builds, and installs ImageMagick automagically. Notice: It will take such a loooooong time. In mainland China, connection to those sites of the libs is very very very slow. You will have to break the process by “ctrl+c” and redo “sudo port install ImageMagick” again and again. Fortunately, it will automatically resume the installation where you broke it.
3. RMagick
RMagick is an interface between the Ruby programming language and the ImageMagick® and GraphicsMagick image processing libraries.
Simply open Terminal application and type “sudo gem install rmagick”. Still you have to be patient. A lot of time will pass with no output from the gem command. The “Successfully installed” message does not mean that RMagick was successfully installed. The RMagick installation can encounter error conditions that gem can’t detect. The following irb session is a better indicator of a successful install. (Of course the version numbers in the message may vary from what is shown here, depending on what versions of the software are currently available.)
4. Paperclip
This is the final stop of our trip.
To install Paperclip, open Terminal application and type “script/plugin install git://github.com/thoughtbot/paperclip.git” at the root directory of your rails project. Creat your migration by typing “script/generate migration AddPhotoToListings”. Open your migration and add following:
Then rake your migrations by “rake db:migrate”.
Next you have to tell your model to use Paperclip, open app/models/listings.rb and add following:
At new and edit views you can add:
At show views you can add:
Now, enjoy Paperclip!
Rails add_index to optimize your Database
When you create your tables through Rails migration, did you ever think about adding a index? I bet that most of you just ignore it, especially when startup and everything might change a lot later. I ignored index too, but when our projects come to production mode, I start to realized that we really really need to optimize our database.
It’s super easy to add and remove a index through migration:
def self.up
add_index :students, :name
end
def self.down
remove_index :students, :name
end
But the difficulty is that you need to find the right fields to index and after that, you need a way to check if it helps. The difficulty increases as your projects grows, i.e. when there are many of fields and relationships between tables. You wouldn’t know what’s the real neck lock through a glance. Fortunately, there are tools that could be used to analyze your existing system and locate what could be improved.
I use jeberly’s query-analyzer to help. After install query-analyzer, you could tail log/development.log, and then start to use your website. “Each SQL select query will be ‘EXPLAIN’ed and added to the log files right below the original query.”
Student Load (0.3ms) SELECT * FROM `students` WHERE (name = 'mike') LIMIT 1
############ FIXME - UNOPTIMIZED QUERY for Student Load ############
select_type | key_len | type | Extra | id |
---------------------------------------------------------... ...
SIMPLE | | ALL | Using where | 1 |
I suggest you go through the Example Use in query-analyzer. It covers usage, results analysis and adding/removing indexes. Here, what I would like to add is how to speed up adding index and reviewing the improvement. It’s pain that you have to write one migration file, then migrate it before you could see the improvement, especially when you have tens of FIXME warnings in the log. My tricks is to do experiment part through script/console, and after you get enough information, you could simply add a migration file with a batch of add_index. That would save a lot of time. Below is how I did in one of our projects:
ruby script/console
ActiveRecord::Base.connection.add_index :students, :name
# You could do this through the model class too
Student.connection.add_index :students, :name
From the log, you could see something like this: CREATE INDEX `index_students_on_name` ON `students` (`name`)
And if you want to remove the index:
ruby script/console
ActiveRecord::Base.connection.remove_index :students, :name
# You could do this through the model class too
Student.connection.remove_index :students, :name
From the log, you could see something like this: DROP INDEX `index_students_on_name` ON `students`
After adding the index, you could refresh your web page, and check the log, see if there are still warnings from query-analyzer.
Note that there are 4 types of index:
- “Normal” Indexes
- Unique Indexes
- Primary keys
- Full-text indexes
The one we talked above is the “Normal” Indexes. I suggest you check this article out for more about indexes.
Google Developer Day 2009
Last Friday, I attended the amazing Google Developer Day 2009! It’s a set of one-day developer events, and a very good chance to learn about latest products from engineers who built them, including Google Maps, OpenSocial, HTML 5, O3D, Android and the most exiting Google Wave! And this is the first time I have chance to talk and share my thoughs with Google developers.
At the keynote speech made by Kai-fu Lee, we learn about the latest products from Google and new features of existing products. There are two products I should pay my attention to, one is OpenSocial, the other is Google Map.
We have a project known as “FriendsMap.net”, helps you visualize where your contacts from Facebook via facebookr gem are located on the Google Map, we are planning to add Twitter via twitter auth, but it seems it’s hard to make facebookr and twitter auth work together compatibly. After a OpenSocial API lecture by Patrick Chanezon, I think OpenSocial is a better choice. OpenSocial is a common API for social applications across multiple websites, with this API we can bring more social network into our app and without learning how to build with every single one of them. The other techology we are using is Google Map. On Google Map lectures by Pamela Fox, I learn about the latest Google Map API V3, with many new features can greatly increase performance of our website. I ask Pamela a few questions about how much work will be needed in upgrading code V2 to V3 and drawing clickable hotspots on custom gmarkers. Her answer is quite funny and I become totally her fan after the conversation.
At the end, thank you Kudelabs offering me such a great opportunity, and all those who work with me on FriendsMap.net, thanks!
Blackcloud sensor at the office.
Thanks to Jon Phillips and Greg Niemeyer, our office has joined the list of sites taking part in the Black Cloud project. It is a very cool device. He just sits there and quietly gathers data on our pollution levels. The sensor passes the information back to Greg’s program, who compiles and turns the information into a very nice graph/visualization.
Its great to see creative projects based on the world around us, bringing awareness to the issue of pollution in a refreshing way. I also really appreciate being able to compare our data with other locations around the world. Thanks to Jon and Greg for including us in the project!
From the Blackcloud.org site:
I track your CO2, your VOC’s, your city light, your endless noise, your rising heat, your damp confines in places all around the world.
Check out svn project in Mac
Check out svn project in Mac
Are you guys just transfer from Windows to Mac, which need to check out project from svn? If yes, this post may help you when checking out project in Mac by using terminal.
- Step 1: Maybe better to build a folder which can save your project
jack-pandemacbook:~ Jackchen$ mkdir workspace/
- Step 2: Then go to the folder which you just created, and the project will be saved in this folder later
jack-pandemacbook:~ Jackchen$ cd workspace/
- Step 3: Get project from svn by enter: svn co svn+ssh://example.com/..., which ”...” is your project where located
jack-pandemacbook:~ Jackchen$ svn co svn+ssh://example.com/code/firstproject
The following is important, if the account is fit your username in .ssh, it’s will be easy, just enter the psw of your account and then you can get the project, but if no(Your .ssh username is jacketchen@example.com and your svn account is jacket@exmaple.com), there is 2 ways to solve it:
-
Enter command with username:
jack-pandemacbook:~ Jackchen$ svn co --username jacket@example.com svn+ssh://example.com/code/firstproject
-
Change the username in .ssh, also there are several steps to do it:
Before go to .ssh, you have to back to the root by: cd ..
- Then go to .ssh: cd .ssh
- Then type: pico config
- Then type: User jacket
- Then save and exit by using Ctrl+O and Ctrl+X
- Step 4: OK, right now, you can enter your password without warning “Permission denied, please try again.” , and enjoy!
在中国, 哪些应用程序能够更好地帮助你使用Mac呢?
这篇文章的灵感来自于我们公司越来越多的Mac追随者, 至今为止, 已经有5个人在使用并享受其中.
Mac本身自带有不少很好的软件, 但仍然不足以满足我们的需求. 例如中文输入法就是其中一个, 它在MacOS X里的表现平平. 另外一个表现逊色的就是播放不同格式的video. 然而幸运的是, 现在有很多免费的小软件都可以弥补它的这些不足. 我认为以下软件都是不错的选择, 不过如果你有更好地选择或者有任何建议, 请慷慨地给我们留言.
中文输入法
Fun Input Toy – 这个拼音输入法明显优于MacOS X内置的ITABC拼音输入法. 如果你需要智能的中文输入法, 那FIT Input Toy无疑是你首选. 同时, 基于iPhone的中文输入软件WeFIT也是由这个团队开发的.
IMQIM – 黄金标准的中文输入法. 这个软件要16美元(RMB109.2元), 不过它真的很不错, 它拥有智能整句输入, 能够帮助你快速输入. 因此, 对于大部分时间都在输入中文的人来说, 这是值得投资的.
播放视频
Perian – 这个插件使自带的Quicktime Player更加强大. 当安装完perian以后, 几乎所有的视频格式都可以播放. 这相当棒, 因为QT Player集成在OS里面, 同时也是最好的播放器之一, 而perian又作为QT Player的插件, 因此它们的结合是相当完美的.
Video Monkey – iPhone 最大的缺点就是不能播放你现有硬盘上的大部分视频, 其中包括AVI 和 WMV 格式视频文件. 然而Video Monkey可以帮助你解决这个难题, 它通过简单的方法转换成可以被播放的格式. 它可以转化大部分格式同时将视频文件转成iPhone或者iPod正好可以显示的size. 它甚至还可以将转换的文件直接导入iTune当中, 以便同步.
VLC – 当上面的视频工具对你来说都失效的话, VCL奏效. VCL能够播放任何东西. 但Quicktime Player的用户界面更加友好, 所以我并不建议把VLC作为首选, 除非实在是没有其他的办法.
压缩文件
UnrarX – 基于某些原因, RAR已经成为中国标准的压缩文件的格式. UnrarX就是可以打开这种格式的应用程序. 这种短小精悍的软件绝对能够达到你的要求.
除此之外, 还有很多不错程序适用于Mac, 而且会越来越多的中国软件开发人员会发现, 支持Mac用户是一个很好的举措. 我记得Apple电脑曾经是一个传奇, 很少人会使用甚至看到Apple电脑, 只是某些人会偶尔听说关于它的消息. 在过去的5年里, Apple公司发生了爆炸性的变化, 那就是从iPods面世和风靡开始, 进而是iPhone和Macbook. 我期待着更多有用的软件能在这里诞生, 同时期待你的建议.
Apps to help you use your Mac in China
View the Chinese Version of this article – 中文版
This post is inspired by the growing number of Switchers in our office. At this point we have 5 people using macs full time and loving it!
The Mac comes with some great software out of the box, there are still a few missing pieces. Chinese input, for one, is poor in MacOS X. Another issue is playing videos in various formats. Luckily, many of these holes can be solved with small pieces of free software, I hope to list the best ones here. Feel free to add more suggestions in the comments.
Chinese Input
Fun Input Toy – Developed in Beijing, this pinyin input system is much better than the built in ITABC pinyin that comes with MacOS X. A MUST download if you want to type in Chinese. This is brought to us by the same team that makes the WeFIT chinese input system for the iPhone.
IMQIM – The gold standard in chinese input. This one does cost $16, but it is really nice, with full intelligent sentence generation for super fast typing. For anyone who spends a lot of time typing in Chinese, this is worth your investment.
Playing Video
Perian – This is a plugin that makes the built in Quicktime Player a powerhouse. After installing perian, pretty much any video format you can throw at it will just play without any fuss. This is great because QT Player is integrated into the OS, and has all the best scrubbing capability of any player out there.
Video Monkey – One of the biggest drawbacks of the iPhone is its refusal to play the videos that you actually have, namely the AVI and WMV files that you have on your hard drive that you may want to take with you. Video Monkey takes care of this by proving an easy way to reformat video. It can take almost any format and convert the file into the right size and format for your iPhone or iPod. It will even put it into your iTunes library for easy syncing.
VLC – when all else fails, VLC to the rescue. VLC can really play anything. The user interface for Quicktime Player is much better, so i don’t recommend using VLC full time, just when it won’t play anywhere else.
RAR Files
UnrarX – For some reason, RAR has become a standard file format within China. UnrarX is the app to open up those files. Its a great little app that does exactly what you would expect.
There are many other excellent programs for the Mac, and finally more and more Chinese software developers are finding that supporting Mac users is a good move. I remember a time when Apple computers were a legend, something that some had heard of but few had ever seen. In the past 5 years, there’s been an explosion of Apple gear, starting with iPods and moving to iPhones and Macbooks. I look forward to seeing many more useful apps in this space, and to hearing your suggestions.
The time has long past for IE6
Following a movement we started in twitter, there is more noise on the web about dropping support for IE 6. This time it comes from a respected web development magazine in the form of a well reasoned article: http://www.bringdownie6.com. For our biggest sites, IE6 makes up 17-26% of the browser share. On this site, IE6 is only 7% (you guys can pat yourselves on the back).
It has long been our position that IE6 is a clearly inferior browser that should be banished. About a year ago, we started allowing some features to degrade, or perhaps not work as nicely in IE6, simply because IE6 can’t support what we want to do. The best example is transparent PNG, which IE should have supported in 5.5. The web would be a much more beautiful place now if it had.
We welcome and support the recent emergence of standards based competition in the browser market. With Webkit, (Chrome, Safari), Firefox, Opera, and even IE8, we look forward to a bright, progressive future in web development.
- As members of your community, take the time to help someone move off of IE6.
- As consultants, explain to clients why supporting IE6 is a waste of time.
- And as developers, lets refuse to downgrade our work to appease the few stragglers.








