Article RSS Feed http://www.imustardsoft.com/rss/ en-us 40 The main blog feed for my Web site. Healthsource.us.com -- Innovative Public Health Website Launched! "Congratulations to our partner Healthsource that has been launched into the Public Health Sphere. It's been a pleasure to work with Christian and his team and we hope the site will be beneficial to all public health professionals! Kudos to the team!"<br/> <a href="http://publichealth.drexel.edu/Media/Latest-News/News-Detail/5036/newsid--1268/" style="text-decoration:none;">http://publichealth.drexel.edu/Media/Latest-News/News-Detail/5036/newsid--1268/</a><br/> website:<a href="http://healthsource.us.com/users/sign_in" style="text-decoration:none;">Healthsource.us.com</a><br/><br/> For Christian Bijoux, MPH ’10, frustration became the engine for a business idea. As a Drexel University School of Public Health MPH student in 2008, he was becoming increasingly annoyed at the lack of one central website for public health research, job opportunities and internships. His solution? Creating <a href="http://healthsource.us.com/users/sign_in" style="text-decoration:none;">Healthsource.us.com</a>.<br><br/> The process of creating the website was not overnight. From the time Bijoux (pictured, right) began turning the idea around in his head, to his discussions with fellow students and colleagues, to partnering with iMustardSoft, LLC, a New York based software development firm to create the website to the recent beta launch of <a href="http://healthsource.us.com/users/sign_in" style="text-decoration:none;">Healthsource.us.com</a>—the process took a total of about four years.<br/><br/> At the time, Bijoux was taking <a href="http://publichealth.drexel.edu/Faculty/Faculty-Member/5034/facultyid--74/pageindex--3/" style="text-decoration:none;">Professor Raymond Lum</a>’s course on strategy and innovation and he cited the course as a turning point. “It wasn’t until Professor Lum’s course—Strategy, Innovation and Change Management in Public Health—that the idea started to gel. It wasn’t about coming up with a completely new idea. It was taking an idea and making it better. That’s when I realized that public health really wasn’t taking advantage of social media.”<br/><br/> Professor Lum said he was happy to hear that the course sparked Bijoux’s interest. “Christian was an enthusiastic and energetic student with an entrepreneurial spirit. One of our goals as professors is to create self-directed learners and alums such as Christian demonstrate that our program has certainly achieved this.”<br/><br/> He continued, “I am pleased that he was able to find his public health passion towards dissemination of public health practice utilizing the internet and social media. Christian, like many others who attend Drexel's MPH program, possesses a multitude of skills beyond his academic ability. Our task as educators is to inspire them to utilize all their skills in creative and innovative ways to address the many public health challenges. We look forward to his accomplishment in shaping public health solutions.”<br/><br/> He also mentioned <a href="http://publichealth.drexel.edu/Faculty/Faculty-Member/5034/facultyid--97/pageindex--1/" style="text-decoration:none;">Professor Dennis Gallagher</a> as instrumental in changing the way he thought. “Professor Gallagher was my advisor and he also introduced me to the article ‘Wicked Problems and Social Complexity,’ allowed me to view problems in such a different way. My time at the DUSPH really exposed me to these different ways of thinking and I’m thankful to both Professor Lum and Professor Gallagher for really challenging me and exposing me to readings that triggered my idea.”<br/><br/> Bijoux said the launch for the site is planned for February 2013. “We are going to launch in mid-February next year. We’re working with some organizations and close friends and colleagues on webinars that will be exclusive for the website. We’re also working on our career center, where users will be able to create their own profile and upload resumes for professional development,” he said.<br/><br/> Ultimately, Bijoux hopes the site will be engaging and useful for public health professionals and academics. “I see it as a place for public health professionals and scholars to go to enhance their career at any stage. A lot of publications and internships that could help are hard to find—I think if I can eliminate the difficulty of searching for this information and have it one place, it can help,” he explained. “The organized field of public health is still relatively young compared to say, medicine. It’s still getting there in that it’s a very broad field. I want to make sure that by using healthsource.us.com, people can see the full benefits of a career in public health.” Mon, 12 Nov 2012 00:00:00 GMT http://www.imustardsoft.com/blog/2012/11/12/healthsource-us-com----innovative-public-health-website-launched/ http://www.imustardsoft.com/blog/2012/11/12/healthsource-us-com----innovative-public-health-website-launched/ TestFlight Mobile App Testing Unable to Download Application message <p>As you may know, we have used the testflight, a popular tool to deliver apps to testers. Testflight has been a good tool for us, and saved a lot of pain in customer <span class="caps">UDID</span> management. <br><br></p> <p>However, recently while working on a mobile app with a rails <span class="caps">API</span> backend for one of New York City and Philadelphia start-up client, we encountered this error message. Interestingly, downloading in iPod and iPad works just fine. <br><br> <img src="/assets/3/photo.png" width="200" alt='testflight' /><br /> <br><br> Finally, We were able to solve this issue in the following 3 steps:<br /> 1. In Entitlements.plist: make sure the &#8220;Can be debugged&#8221; is &#8220;<span class="caps">YES</span>&#8221;<br /> <img src="/assets/4/Screen Shot 2012-08-28 at 12.00.15 PM.png" alt='entitlements' /><br /> 2. select project name &#8594; Build Settings &#8594; Code Signing, make sure the &#8220;Code Signing Entitlements&#8221; and &#8220;Code Signing Identity&#8221; is correct.<br /> <img src="/assets/5/Screen Shot 2012-08-28 at 3.30.07 PM.png" width="652" alt='code sign1' /><br /> 3. select targets &#8594; Build Settings &#8594; Code Signing, make sure the &#8220;Code Signing Entitlements&#8221; and &#8220;Code Signing Identity&#8221; is correct.<br /> <img src="/assets/6/Screen Shot 2012-08-28 at 3.30.36 PM.png" width="652" alt='code sign2' /><br /> <br> Also, we use the Xcode 4.2 and ios 5.1 for testing.</p> Tue, 28 Aug 2012 00:00:00 GMT http://www.imustardsoft.com/blog/2012/08/28/testflight-mobile-app-testing-unable-to-download-application-message/ http://www.imustardsoft.com/blog/2012/08/28/testflight-mobile-app-testing-unable-to-download-application-message/ A rave review from from our start-up client <ul> <li> <img src="/assets/2/beermark_comments_normal.png" alt='beermark_comments'/> </li> </ul> Wow -- a rave review from from our start-up client in New York City area for whom we implemented both Ruby on Rails and Mobile applications. We are humbled... <br/><br/> See more here <a href="https://www.facebook.com/pages/Beermark/135764863208546" style="text-decoration:none; font-size:16px;">https://www.facebook.com/pages/Beermark/135764863208546</a> <br/><br/> Do you want your Apps and Website to turn out just the way you want it? In the speed that you want it? <br/><br/> iMustardSoft will deliver... hear it from our clients themselves! <a href="http://imustardsoft.com/contact/contact-us" style="text-decoration:none; font-size:16px;">Contact us</a>! <br/> Sat, 17 Mar 2012 00:00:00 GMT http://www.imustardsoft.com/blog/2012/03/17/a-rave-review-from-from-our-start-up-client/ http://www.imustardsoft.com/blog/2012/03/17/a-rave-review-from-from-our-start-up-client/ The Lower East Side iPhone app is here! "The Lower East Side iPhone app is here!<br/> For updates on all things LES, visit iTunes to download our FREE app"<br/> The Lower East Side Tourism Center is enthused to have their iPhone app, created by iMustardSoft, available to the market.<br/><br/> <a href="http://www.lowereastsideny.com/" style="text-decoration:none; font-size:16px;">http://www.lowereastsideny.com/</a><br><br> <img src="/images/les_pic.jpg"> Thu, 19 Jan 2012 00:00:00 GMT http://www.imustardsoft.com/blog/2012/01/19/the-lower-east-side-iphone-app-is-here/ http://www.imustardsoft.com/blog/2012/01/19/the-lower-east-side-iphone-app-is-here/ ITEX Cross Platform Android and iPhone Apps Showing the adaptability of their business and its desire to stay technologically in tune with the marketplace, ITEX chose iMustardSoft to fulfill all their mobile development needs. Using the most advanced programming languages Ruby on Rails and working within a reasonable budget and timeframe, iMustardSoft delivered!<br/><br/> A cross-platform mobile app to help clients find local brokers and business vendors was just published in the Android Market store and iPhone App is being published in the Apple App Store. The Apps in total took around 25 days each to develop. Development included graphic design, Data Scaping & Content Management App and the Android App itself. The client is excited about the mobile apps and emphasize that they are satisfied with how fast the applications for both Android and iOS are developed, including the APIs.<br/><br/> <strong style="color:#0173C4; font-size:14px;">“It is working 110% perfect... Thanks for everything.”</strong> --- Herb at ITEX <br/><br/> The Mobile Android App includes 3 choices: 1) one with ITEX in the news, 2) with ITEX in the market and 3) with ITEX Brokers, which would take you to your closest Broker to the person inquiring. This application will periodically visit all the ITEX district pages and download the content to create APIs for mobile apps.<br/><br/> <span style="font-size: 16px; font-weight: bold;">ITEX: <a href="https://market.android.com/details?id=com.imustardsoft.itex">https://market.android.com/details?id=com.imustardsoft.itex</a></span> Mon, 09 Jan 2012 00:00:00 GMT http://www.imustardsoft.com/blog/2012/01/09/itex-cross-platform-android-and-iphone-apps/ http://www.imustardsoft.com/blog/2012/01/09/itex-cross-platform-android-and-iphone-apps/ BigApps: Advice from Previous Winner Judy Wong <div style="float:right;width:100px;margin:0 0px 0px 8px;"><img src="/images/photo-pic.jpg" /></div> The deadline for NYC BigApps 3.0 submissions is less than one month away. For inspiration, we checked in with previous BigApps winners for words of wisdom for this year’s competitors. Read on for insights from Judy Wong of NYC Plan It, which won the NYC BigApps 2.0 City Talent Award. NYCPlanIt serves as a personal tour guide for visitors in New York City.<br/><br/> <strong>What were the most important aspects of winning BigApps for you?</strong><br/> It was a joy for us to create NYC Plan It, which would help NYC’s major tourism and travel industry by supporting local businesses like restaurants and shops. Using technology to practically help people around us—travelers, locals and also industry folks—meant a lot for us working in technology. Many times there is a disconnect between business and charity, and business and the real lives of people.<br/><br/> <strong>How has your app, company, or career evolved since winning BigApps?</strong><br/> Since the competition, we have been developing our app across platforms in iOS for iPhone as well as other platforms such as Blackberry. We’ve also listened to our users and have redesigned the pages to be more modern and contemporary. The users have given us a lot of kudos for the concept of NYC Plan It and now we have caught on to their need to cover more mobile markets and make the UI friendlier. We’ve also had chances to develop more apps for Android and iPhone. Check out our iPhone app for the Lower East Side Tourism Center.<br/><br/> <strong>What are your future goals for your app, company, or self?</strong><br/> We hope to continue to develop our product within this niche local NYC market. We hope to help build up businesses during such hard economic times. After 9/11 it was hard, but with this economy it’s continued to be difficult. Maybe our app can help things improve for consumers, travelers, locals, and businesses alike.<br/><br/> <strong>What advice would you give new BigApps applicants?</strong><br/> Keep up the good work. Creativity really helps to drive technology and connect users, our world around us and the emerging technology market. It’s also great to be part of the Big Apple; if your app can make it here, it can make it anywhere.<br/><br/> <strong>Excluding your own, what’s your favorite BigApps app?</strong><br/> Our team felt that the winners all had wonderful apps. We need the parking space finder since it’s so useful. DontEat.at was also really great. We love food and eating and find that helpful as we go to different restaurants. It’s absolutely the favorite of our friends, too.<br/> <a href="http://nycedc.tumblr.com/post/15029380970/bigapps-advice-from-previous-winner-judy-wong" style="text-decoration:none;">http://nycedc.tumblr.com/post/15029380970/bigapps-advice-from-previous-winner-judy-wong</a> Mon, 09 Jan 2012 00:00:00 GMT http://www.imustardsoft.com/blog/2012/01/09/bigapps-advice-from-previous-winner-judy-wong/ http://www.imustardsoft.com/blog/2012/01/09/bigapps-advice-from-previous-winner-judy-wong/ rails2 geo code with bing map <p>In rails, if you want to use a geocode gem for your project, this is very simple. You can use geokit, geocoder and so on. However, if you need to to use it with bing map geocoding, the geokit is not supported currently and the geocoder starting from rails3. Unfortunately, some of our some projects use rails2, so I get the bing source code from geocoder. The following is the sources code to use the bing map.</p> <pre><code> require 'net/http' require 'uri' require 'rubygems' require 'json' class Address def geocode(address) results = geo_code_results(address) coordinates = results.first['point']['coordinates'] puts coordinates end def geo_code_results(query) return [] unless doc = fetch_data(query) if doc['statusDescription'] == "OK" return doc['resourceSets'].first['estimatedTotal'] &gt; 0 ? doc['resourceSets'].first['resources'] : [] else warn "Bing Geocoding API error: #{doc['statusCode']} (#{doc['statusDescription']})." return [] end end def query_url(query) params = {:key =&gt; "API-KEY"} params[:query] = query base_url = "http://dev.virtualearth.net/REST/v1/Locations" url_tail = "?" base_url + url_tail + hash_to_query(params) end def hash_to_query(hash) require 'cgi' unless defined?(CGI) &amp;&amp; defined?(CGI.escape) hash.collect{ |p| p[1].nil? ? nil : p.map{ |i| CGI.escape i.to_s } * '=' }.compact.sort * '&amp;' end def fetch_data(query) begin parse_raw_data fetch_raw_data(query) rescue SocketError =&gt; err raise_error(err) or warn "Geocoding API connection cannot be established." rescue TimeoutError =&gt; err raise_error(err) or warn "Geocoding API not responding fast enough " + "(see Geocoder::Configuration.timeout to set limit)." end end ## # Fetches a raw search result (JSON string). # def fetch_raw_data(query) timeout(30) do url = query_url(query) uri = URI.parse(url) client = http_client.new(uri.host, uri.port) response = client.get(uri.request_uri).body response end end ## # Parses a raw search result (returns hash or array). # def parse_raw_data(raw_data) if defined?(ActiveSupport::JSON) ActiveSupport::JSON.decode(raw_data) else begin JSON.parse(raw_data) rescue warn "Geocoding API's response was not valid JSON." end end end ## # Object used to make HTTP requests. # def http_client Net::HTTP end end address = Address.new address.geocode("25 Main St, Cooperstown, NY") </code></pre> <p>Note, you must get the bing map api key first. <a href="www.bingmapsportal.com">www.bingmapsportal.com</a></p> Tue, 27 Dec 2011 00:00:00 GMT http://www.imustardsoft.com/blog/2011/12/27/rails2-geo-code-with-bing-map/ http://www.imustardsoft.com/blog/2011/12/27/rails2-geo-code-with-bing-map/ LES iPhone App <p><a style="font-size: 20px; font-weight: bold; " href="http://itunes.apple.com/us/app/les/id477097479?mt=8">http://itunes.apple.com/us/app/les/id477097479?mt=8</a></p> <div><span>The Lower East Side iPhone Application, published this week in the Apple store,</span><span>allows iMustardSoft to further support New York City, businesses, tourist and local people here. </span><span>The App allows tourists and locals to get the latest and hottest news about events and sales and things giong on in the LES. We hope that this will empower businesses and consumers alike. Please also check out our NYC PlanIt App which helps tourists and locals to check out the larger New York City area. </span><br /> <h2 dir="ltr"><span>Lower East Side iPhone Application</span></h2> <p><span><br /></span></p> <div><span>The Lower East Side Business Improvement District (LES BID) was established in 1992 as a nonprofit economic development organization dedicated to revitalizing the Orchard Street Shopping District by providing a variety of services to promote economic activity and improve the quality of life in the Lower East Side.</span><br /><span><span> </span><span> </span><span> </span></span><br /><span>Efforts are tailored toward assisting property owners and merchants who are in the Lower East Side Business Improvement District, and improving the overall quality of life in the community.</span><br /><span><span> </span><span> </span><span> </span></span><br /><span>Services provided by the LES BID include:</span><br /><span>Beautification efforts including street cleaning, graffiti removal, tree plantings, and holiday decorative lighting installations;</span><br /><span>Economic development and business assistance in the form of storefront, security camera, and website development grants; and Validated 2-hour free parking for shoppers, as well as discounted rates for merchants. <span> </span><span> </span><span> </span></span><br /><span><span> </span><span> </span><span> </span></span><br /><span>The LES BID also markets the neighborhood through free walking tours, the Go East! Shopping Guide, a gallery guide, co-op advertisements and special events including fashion shows and street festivals.</span><br /><span><span> </span><span> </span><span> </span></span><br /><span>We were asked by the LES BID to create an iPhone Application to help them expand their efforts. LES iPhone App helps tourist and residents explore the following areas in the lower East Side: 1. What&rsquo;s Hot and Happening, 2. Eat &ndash; Restaurants and eateries, 3. Nightlife and Entertainment, 4. Shop &ndash; Best places to shop, 5. Explore &ndash; places and sites to explore, 6. Event &ndash; Special events, and 7. Favorites.</span><br /><span><span> </span><span> </span><span> </span></span><br /><span>In the creation of this application, we focused on the following areas during our programming efforts. First we integrated the &ldquo;Hot and Happening&rdquo; feature, so that tourist and residents could be notified about the latest events. Additional areas of focus were the following:</span></div> <div><span><br /></span></div> <h4 dir="ltr"><span>Services Provided</span></h4> <span><span> </span><span> </span><span> </span><span> </span></span> <ul> <li><span>Improving the app look-n-feel</span></li> <li><span>Added to Calendar</span></li> <li><span>UI Design polished</span></li> <li><span>Fetching Data interaction improved</span></li> <li><span>tSearch Feature improved</span></li> <li><span>Distance calculation created</span></li> <li><span>Added Facebook and Twitter account and also the Rss feed on the home page</span></li> </ul> </div> <p>&nbsp;</p> Sun, 04 Dec 2011 00:00:00 GMT http://www.imustardsoft.com/blog/2011/12/04/les-iphone-app/ http://www.imustardsoft.com/blog/2011/12/04/les-iphone-app/ Spree eCommerce Checkout Exception Spree Ecommerce is a popular open source ecommerce management and store front package that is based on ruby on rails. We like the way it can be customized, mostly by hooks and overrides. We recently worked on a Spree customization project for one of our clients near New York City. We encounted the got the following error message when we try to check out. <script src="https://gist.github.com/1347631.js"> </script> We were at a loss on what the issue is, as we didn't really touch that part of the application. After some research, it turns to be a data issue, mostly with a shipping method, Price Bucket. Here is the spree_core/app/models/calculator/price_bucket.rb in Spree 0.70.1. It turns out that Order objects have either to_d or amount methods, which led to the system throwing out an exception when the object passed in is an Order. <script src="https://gist.github.com/1347754.js"> </script> One solution for this is to add an amount method in the Order class. <script src="https://gist.github.com/1347759.js"> </script> even though we haven't really tested it out, but it should be able to work with Price Bucket calculator. Tue, 08 Nov 2011 00:00:00 GMT http://www.imustardsoft.com/blog/2011/11/08/spree-ecommerce-checkout-exception/ http://www.imustardsoft.com/blog/2011/11/08/spree-ecommerce-checkout-exception/ rails 3 select_tag as we have been working on a rails application for a client near New York City, we need to use the rails select_tag helper method to display a select dropdown without a form tag around it. One particular feature is to add the default selection, such as "Select A Brand". So, after we googled select_tag, we got this page, http://api.rubyonrails.org/classes/ActionView/Helpers/FormTagHelper.html. On this page, we saw the following example: <script src="https://gist.github.com/1289708.js"> </script> It seems like all we needed to do is to have the default text in the prompt attribute. However, it didn't work. It simply created a html attribute with the name "prompt". Digging deeper into the issue, we started to look at rails 3 source code. <script src="https://gist.github.com/1285365.js"> </script> Obviously, perhaps for the consideration for reducing the number of attributes, rails has decided to include the prompt in the include_blank attribute. So that it looks like this: :include_blank => 'Select A Brand'. Sat, 15 Oct 2011 00:00:00 GMT http://www.imustardsoft.com/blog/2011/10/15/rails-3-select_tag/ http://www.imustardsoft.com/blog/2011/10/15/rails-3-select_tag/