{"comment":{"created_at":"2011-10-13T18:18:53Z","body":"@incanus - I agree that the startup times are really suboptimal. I'd like them to be at most .5 sec for app + node code.\r\n\r\nIn particular is no fun to wait at all for the nodjs code to load after already waiting for the OSX app to load. On my machine a cold start is around 3-4 seconds seconds, and then repeated loads after that are around one second.\r\n\r\nI don't have a clue atm how to optimize the cold scenario (we need to figure out if this is slow due osx caching or actually can be related to our code), but as far as the \"hot\" scenario I know that mapnik font registration and datasource registration together account for about 1/3 of that \"hot\" second. So, moving these function calls to be lazy and async would help a bit. We would just have to be *very* careful not to try to load any maps before mapnik has finished initializing - so they are sync now for a reason.\r\n\r\nAs far as the other 2/3 of the hot second - my hunch is some of this is v8 doing its smart optimizations for runtime speed, but this is just a guess. I think node 0.5 using v8 with crankshaft and [\"Crankshaft improves the page load performance of Chrome by 12%\"] (http://blog.chromium.org/2010/12/new-crankshaft-for-v8.html).","updated_at":"2011-10-13T18:18:53Z","url":"https://api.github.com/repos/mapbox/tilemill/issues/comments/2398096","id":2398096,"user":{"avatar_url":"https://secure.gravatar.com/avatar/edd0be6c7c035b58bb2712284da41f1f?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"edd0be6c7c035b58bb2712284da41f1f","url":"https://api.github.com/users/springmeyer","id":20300,"login":"springmeyer"}},"action":"created","issue":{"number":594,"created_at":"2011-08-11T02:25:02Z","pull_request":{"diff_url":null,"patch_url":null,"html_url":null},"body":"At least on the Mac, seems simple to wrap a dedicated browser window that just is TileMill in the app. WebKit ftw?","comments":6,"title":"Integrated WebKit view for TileMill app","updated_at":"2011-10-13T18:18:53Z","url":"https://api.github.com/repos/mapbox/tilemill/issues/594","id":1384358,"assignee":{"avatar_url":"https://secure.gravatar.com/avatar/39f0706e7558c15a2abe1a0c5aba7fdf?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"39f0706e7558c15a2abe1a0c5aba7fdf","url":"https://api.github.com/users/incanus","id":17722,"login":"incanus"},"milestone":{"number":10,"created_at":"2011-08-22T15:15:09Z","due_on":null,"title":"0.6","creator":{"avatar_url":"https://secure.gravatar.com/avatar/59a84d39d1265322ac7a37df6cde2fa2?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"59a84d39d1265322ac7a37df6cde2fa2","url":"https://api.github.com/users/willwhite","id":93564,"login":"willwhite"},"url":"https://api.github.com/repos/mapbox/tilemill/milestones/10","open_issues":8,"closed_issues":1,"description":"","state":"open"},"closed_at":null,"user":{"avatar_url":"https://secure.gravatar.com/avatar/e679fead4b7cb50b7b60e7c4f99bc348?d=https://a248.e.akamai.net/assets.github.com%2Fimages%2Fgravatars%2Fgravatar-140.png","gravatar_id":"e679fead4b7cb50b7b60e7c4f99bc348","url":"https://api.github.com/users/nvkelso","id":853051,"login":"nvkelso"},"html_url":"https://github.com/mapbox/tilemill/issues/594","labels":[{"name":"osx","url":"https://api.github.com/repos/mapbox/tilemill/labels/osx","color":"ededed"},{"name":"wishlist","url":"https://api.github.com/repos/mapbox/tilemill/labels/wishlist","color":"00ff09"}],"state":"open"},"legacy":{"issue_id":1384358,"comment_id":2398096}}