<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Mobile Apps Archives - Sully Syed</title>
	<atom:link href="https://yllus.com/portfolio-category/mobile-apps/feed/" rel="self" type="application/rss+xml" />
	<link>https://yllus.com/portfolio-category/mobile-apps/</link>
	<description>Management executive, software developer and cyclist hailing from Toronto, Canada.</description>
	<lastBuildDate>Wed, 13 Dec 2023 17:47:23 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9</generator>
	<item>
		<title>#MyGolfYear (Golf Canada Wrapped)</title>
		<link>https://yllus.com/portfolio/mygolfyear-golf-canada-wrapped/</link>
					<comments>https://yllus.com/portfolio/mygolfyear-golf-canada-wrapped/#respond</comments>
		
		<dc:creator><![CDATA[Sully Syed]]></dc:creator>
		<pubDate>Tue, 12 Dec 2023 18:44:12 +0000</pubDate>
				<guid isPermaLink="false">http://yllus.com/?post_type=portfolio&#038;p=3477</guid>

					<description><![CDATA[Since its debut in 2016, the end-of-year Spotify Wrapped campaign has always fascinated me as one of the most brilliant feats of marketing in the modern era: By simply summarizing a customer&#8217;s own data and putting an attractive graphics package <a href="https://yllus.com/portfolio/mygolfyear-golf-canada-wrapped/"><div class="read-more"><p>Read more &#8250;</p></div><!-- end of .read-more --></a>]]></description>
										<content:encoded><![CDATA[<p>Since its debut in 2016, the end-of-year <a href="https://www.spotify.com/us/wrapped/">Spotify Wrapped</a> campaign has always fascinated me as one of the most brilliant feats of marketing in the modern era: By simply summarizing a customer&#8217;s own data and putting an attractive graphics package around it, Spotify earns mounds of free press (<a href="https://www.wired.com/story/spotify-wrapped-never-going-away/">Wired</a>, <a href="https://www.theverge.com/23980858/spotify-wrapped-2023-how-to">The Verge</a>, <a href="https://www.businessinsider.com/guides/streaming/how-to-find-spotify-wrapped">Business Insider</a>) and even more reach organically as millions of Spotify users share their listening preferences with their friends on social media.</p>
<p>In my first year with Golf Canada in 2021, having just gotten comfortable with the organization&#8217;s incredible dataset on golf being played in Canada, I pitched the obvious: Why don&#8217;t we spin up a large number of servers in the cloud, crunch through the data and gift each member of Golf Canada with their own shareable graphic of the golf they played that year? The go-ahead was quickly given and a furious three week effort resulted in the <a href="https://www.golfcanada.ca/articles/golfers-share-their-2021-stats-as-part-of-new-golf-canada-mygolfyear-campaign/">2021 #MyGolfYear campaign</a>, a simple but well-received surprise to Golf Canada members.</p>
<p><center></p>
<blockquote class="instagram-media" style="background: #FFF; border: 0; border-radius: 3px; box-shadow: 0 0 1px 0 rgba(0,0,0,0.5),0 1px 10px 0 rgba(0,0,0,0.15); margin: 1px; max-width: 540px; min-width: 326px; padding: 0; width: calc(100% - 2px);" data-instgrm-captioned="" data-instgrm-permalink="https://www.instagram.com/p/CYCNVHeF48W/?utm_source=ig_embed&amp;utm_campaign=loading" data-instgrm-version="14">
<div style="padding: 16px;">
<p>&nbsp;</p>
<div style="display: flex; flex-direction: row; align-items: center;">
<div style="background-color: #f4f4f4; border-radius: 50%; flex-grow: 0; height: 40px; margin-right: 14px; width: 40px;"></div>
<div style="display: flex; flex-direction: column; flex-grow: 1; justify-content: center;">
<div style="background-color: #f4f4f4; border-radius: 4px; flex-grow: 0; height: 14px; margin-bottom: 6px; width: 100px;"></div>
<div style="background-color: #f4f4f4; border-radius: 4px; flex-grow: 0; height: 14px; width: 60px;"></div>
</div>
</div>
<div style="padding: 19% 0;"></div>
<div style="display: block; height: 50px; margin: 0 auto 12px; width: 50px;"></div>
<div style="padding-top: 8px;">
<div style="color: #3897f0; font-family: Arial,sans-serif; font-size: 14px; font-style: normal; font-weight: 550; line-height: 18px;">View this post on Instagram</div>
</div>
<div style="padding: 12.5% 0;"></div>
<div style="display: flex; flex-direction: row; margin-bottom: 14px; align-items: center;">
<div>
<div style="background-color: #f4f4f4; border-radius: 50%; height: 12.5px; width: 12.5px; transform: translateX(0px) translateY(7px);"></div>
<div style="background-color: #f4f4f4; height: 12.5px; transform: rotate(-45deg) translateX(3px) translateY(1px); width: 12.5px; flex-grow: 0; margin-right: 14px; margin-left: 2px;"></div>
<div style="background-color: #f4f4f4; border-radius: 50%; height: 12.5px; width: 12.5px; transform: translateX(9px) translateY(-18px);"></div>
</div>
<div style="margin-left: 8px;">
<div style="background-color: #f4f4f4; border-radius: 50%; flex-grow: 0; height: 20px; width: 20px;"></div>
<div style="width: 0; height: 0; border-top: 2px solid transparent; border-left: 6px solid #f4f4f4; border-bottom: 2px solid transparent; transform: translateX(16px) translateY(-4px) rotate(30deg);"></div>
</div>
<div style="margin-left: auto;">
<div style="width: 0px; border-top: 8px solid #F4F4F4; border-right: 8px solid transparent; transform: translateY(16px);"></div>
<div style="background-color: #f4f4f4; flex-grow: 0; height: 12px; width: 16px; transform: translateY(-4px);"></div>
<div style="width: 0; height: 0; border-top: 8px solid #F4F4F4; border-left: 8px solid transparent; transform: translateY(-4px) translateX(8px);"></div>
</div>
</div>
<div style="display: flex; flex-direction: column; flex-grow: 1; justify-content: center; margin-bottom: 24px;">
<div style="background-color: #f4f4f4; border-radius: 4px; flex-grow: 0; height: 14px; margin-bottom: 6px; width: 224px;"></div>
<div style="background-color: #f4f4f4; border-radius: 4px; flex-grow: 0; height: 14px; width: 144px;"></div>
</div>
<p>&nbsp;</p>
<p style="color: #c9c8cd; font-family: Arial,sans-serif; font-size: 14px; line-height: 17px; margin-bottom: 0; margin-top: 8px; overflow: hidden; padding: 8px 0 7px; text-align: center; text-overflow: ellipsis; white-space: nowrap;"><a style="color: #c9c8cd; font-family: Arial,sans-serif; font-size: 14px; font-style: normal; font-weight: normal; line-height: 17px; text-decoration: none;" href="https://www.instagram.com/p/CYCNVHeF48W/?utm_source=ig_embed&amp;utm_campaign=loading" target="_blank" rel="noopener">A post shared by Laurence Applebaum (@laurence.applebaum)</a></p>
</div>
</blockquote>
<p><script async src="//www.instagram.com/embed.js"></script></center></p>
<p>In 2022 and 2023, with more time for planning and exploration, <a href="https://www.golfcanada.ca/articles/mygolfyear-is-back-for-2022/">the #MyGolfYear campaign returned</a>, with the basic summary values such as the Total Rounds, # of Holes, Distance Played and Best Round again being featured, and now adding 15 possible &#8216;achievements&#8217; a golfer could earn due to their play that year.</p>
<p><center></p>
<blockquote class="instagram-media" style="background: #FFF; border: 0; border-radius: 3px; box-shadow: 0 0 1px 0 rgba(0,0,0,0.5),0 1px 10px 0 rgba(0,0,0,0.15); margin: 1px; max-width: 540px; min-width: 326px; padding: 0; width: calc(100% - 2px);" data-instgrm-captioned="" data-instgrm-permalink="https://www.instagram.com/p/CmPir5nOY5u/?utm_source=ig_embed&amp;utm_campaign=loading" data-instgrm-version="14">
<div style="padding: 16px;">
<p>&nbsp;</p>
<div style="display: flex; flex-direction: row; align-items: center;">
<div style="background-color: #f4f4f4; border-radius: 50%; flex-grow: 0; height: 40px; margin-right: 14px; width: 40px;"></div>
<div style="display: flex; flex-direction: column; flex-grow: 1; justify-content: center;">
<div style="background-color: #f4f4f4; border-radius: 4px; flex-grow: 0; height: 14px; margin-bottom: 6px; width: 100px;"></div>
<div style="background-color: #f4f4f4; border-radius: 4px; flex-grow: 0; height: 14px; width: 60px;"></div>
</div>
</div>
<div style="padding: 19% 0;"></div>
<div style="display: block; height: 50px; margin: 0 auto 12px; width: 50px;"></div>
<div style="padding-top: 8px;">
<div style="color: #3897f0; font-family: Arial,sans-serif; font-size: 14px; font-style: normal; font-weight: 550; line-height: 18px;">View this post on Instagram</div>
</div>
<div style="padding: 12.5% 0;"></div>
<div style="display: flex; flex-direction: row; margin-bottom: 14px; align-items: center;">
<div>
<div style="background-color: #f4f4f4; border-radius: 50%; height: 12.5px; width: 12.5px; transform: translateX(0px) translateY(7px);"></div>
<div style="background-color: #f4f4f4; height: 12.5px; transform: rotate(-45deg) translateX(3px) translateY(1px); width: 12.5px; flex-grow: 0; margin-right: 14px; margin-left: 2px;"></div>
<div style="background-color: #f4f4f4; border-radius: 50%; height: 12.5px; width: 12.5px; transform: translateX(9px) translateY(-18px);"></div>
</div>
<div style="margin-left: 8px;">
<div style="background-color: #f4f4f4; border-radius: 50%; flex-grow: 0; height: 20px; width: 20px;"></div>
<div style="width: 0; height: 0; border-top: 2px solid transparent; border-left: 6px solid #f4f4f4; border-bottom: 2px solid transparent; transform: translateX(16px) translateY(-4px) rotate(30deg);"></div>
</div>
<div style="margin-left: auto;">
<div style="width: 0px; border-top: 8px solid #F4F4F4; border-right: 8px solid transparent; transform: translateY(16px);"></div>
<div style="background-color: #f4f4f4; flex-grow: 0; height: 12px; width: 16px; transform: translateY(-4px);"></div>
<div style="width: 0; height: 0; border-top: 8px solid #F4F4F4; border-left: 8px solid transparent; transform: translateY(-4px) translateX(8px);"></div>
</div>
</div>
<div style="display: flex; flex-direction: column; flex-grow: 1; justify-content: center; margin-bottom: 24px;">
<div style="background-color: #f4f4f4; border-radius: 4px; flex-grow: 0; height: 14px; margin-bottom: 6px; width: 224px;"></div>
<div style="background-color: #f4f4f4; border-radius: 4px; flex-grow: 0; height: 14px; width: 144px;"></div>
</div>
<p>&nbsp;</p>
<p style="color: #c9c8cd; font-family: Arial,sans-serif; font-size: 14px; line-height: 17px; margin-bottom: 0; margin-top: 8px; overflow: hidden; padding: 8px 0 7px; text-align: center; text-overflow: ellipsis; white-space: nowrap;"><a style="color: #c9c8cd; font-family: Arial,sans-serif; font-size: 14px; font-style: normal; font-weight: normal; line-height: 17px; text-decoration: none;" href="https://www.instagram.com/p/CmPir5nOY5u/?utm_source=ig_embed&amp;utm_campaign=loading" target="_blank" rel="noopener">A post shared by Cassie Campbell-Pascall (@cassiecampbell77)</a></p>
</div>
</blockquote>
<p><script async src="//www.instagram.com/embed.js"></script></center></p>
<p>For technology, #MyGolfYear is powered by <a href="https://github.com/laravel/horizon"><strong>Laravel Horizon</strong></a> running on <a href="https://aws.amazon.com/"><strong>Amazon AWS Cloud</strong></a> as a fast, parallelized queue to process the millions of scores entered annually by hundreds of thousands of Golf Canada&#8217;s membership, with <strong><a href="https://mailchimp.com/">MailChimp and Mandrill</a></strong> used for e-mail and <a href="https://onesignal.com/"><strong>OneSignal</strong></a> for push notifications to provide members with their annual stats package.</p>
<p>With an e-mail open rate in excess of 64% and thousands of shareable graphics making the rounds on <a href="https://www.facebook.com/hashtag/MyGolfYear/">Facebook</a>, <a href="https://www.instagram.com/explore/tags/mygolfyear/">Instagram</a>, <a href="https://twitter.com/search?q=%23MyGolfYear&#038;src=typed_query">Twitter</a> and <a href="https://www.linkedin.com/feed/hashtag/?keywords=mygolfyear">LinkedIn</a>, #MyGolfYear had popular success, but added commercial success via sponsorship with <a href="https://www.journie.ca/en-CA">JOURNIE Rewards</a> in 2022 and <a href="https://www.bdo.ca/">BDO Canada</a> in 2023 and onwards. To me, like Spotify Wrapped, it is the definition of making use of an organization&#8217;s existing assets in a new (heavily &#8216;inspired by&#8217;) way to surprise-and-delight one&#8217;s own customers while also creating a saleable new asset.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://yllus.com/portfolio/mygolfyear-golf-canada-wrapped/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Golf Canada Mobile App (Social Features)</title>
		<link>https://yllus.com/portfolio/golf-canada-mobile-app-social-features/</link>
		
		<dc:creator><![CDATA[Sully Syed]]></dc:creator>
		<pubDate>Tue, 03 Oct 2023 13:11:10 +0000</pubDate>
				<guid isPermaLink="false">http://yllus.com/?post_type=portfolio&#038;p=3438</guid>

					<description><![CDATA[With over 125,000 golfers using the Golf Canada Mobile App on a weekly basis, Golf Canada had a very successful app that was nonetheless severely limited in its ability to surface messaging and communicate with the userbase of the product. <a href="https://yllus.com/portfolio/golf-canada-mobile-app-social-features/"><div class="read-more"><p>Read more &#8250;</p></div><!-- end of .read-more --></a>]]></description>
										<content:encoded><![CDATA[<p><iframe style="aspect-ratio: 16 / 9; width: 100%;" src="https://www.youtube.com/embed/jER9_zR98L4?si=aLgSeNFRFIuxH9ZR" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe></p>
<p>With over 125,000 golfers using the <a href="https://www.golfcanada.ca/golf-canada-app/">Golf Canada Mobile App</a> on a weekly basis, Golf Canada had a very successful app that was nonetheless severely limited in its ability to surface messaging and communicate with the userbase of the product. To provide a reason for Canadians to open and use the app outside of strictly recording their scores and increase engagement with their friends, Golf Canada and its partners, I proposed in 2022 that social network-style features be implemented in the next release of the Golf Canada Mobile App.</p>
<p>In late 2022 and early 2023, I architected and led the development of the friend system, home screen news feed, the ability to attach photos and videos to a score posting or content upload, and push / e-mail notifications about your friends&#8217; activities in the Golf Canada Mobile App. The API and backend in use is Laravel, with <a href="https://github.com/laravel/horizon"><strong>Laravel Horizon</strong></a> utilized in particular as a fast, parallelized queue to create cached score and content posts that can be instantly retrieved and displayed in the home screen feed of golfers. To notify golfers about friend requests and the activities of their friends, Laravel Horizon queues and executes 1:1 transactional push notifications via <a href="https://onesignal.com/"><strong>OneSignal</strong></a> and e-mail via <a href="https://mandrillapp.com/"><strong>Mandrill</strong></a>. Finally, <a href="https://voyager.devdojo.com/"><strong>Voyager</strong></a> provides Golf Canada staff with a simple-to-use web backend to administer and moderate content on the platform.</p>
<p>Since release in August 2023 through the month of December, over 9.8 million posts have already been viewed via the home screen feed, 136,000+ new friend requests have been made and accepted, and over 30,000+ photos and videos have been uploaded via the mobile app. Critically for Golf Canada&#8217;s partners, a 400% increase in banner ad code loads and a 300% increase in ad impressions has resulted from the introduction of the home screen news feed to the app.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Golf Canada Mobile App (Live Events)</title>
		<link>https://yllus.com/portfolio/golf-canada-mobile-app/</link>
					<comments>https://yllus.com/portfolio/golf-canada-mobile-app/#respond</comments>
		
		<dc:creator><![CDATA[Sully Syed]]></dc:creator>
		<pubDate>Fri, 24 Feb 2023 19:37:14 +0000</pubDate>
				<guid isPermaLink="false">http://yllus.com/?post_type=portfolio&#038;p=3398</guid>

					<description><![CDATA[As hosts and organizers of the annual RBC Canadian Open and CP Women&#8217;s Open (the Canadian PGA and LPGA championship events respectively), in 2021, Golf Canada green-lit a project to add live event functionality into the Golf Canada Mobile App. <a href="https://yllus.com/portfolio/golf-canada-mobile-app/"><div class="read-more"><p>Read more &#8250;</p></div><!-- end of .read-more --></a>]]></description>
										<content:encoded><![CDATA[<p>As hosts and organizers of the annual <a href="https://rbccanadianopen.com/">RBC Canadian Open</a> and <a href="https://www.cpwomensopen.com/">CP Women&#8217;s Open</a> (the Canadian PGA and LPGA championship events respectively), in 2021, Golf Canada green-lit a project to add live event functionality into the <a href="https://www.golfcanada.ca/golf-canada-app/">Golf Canada Mobile App</a>. For those two weeks of the year, event goers would be able use the app to view a course map, live leaderboards and tee times, access their tickets and use mobile ordering to purchase food and beverages anywhere on the grounds.</p>
<p>With mobile app development partner <a href="https://www.mirego.com/">Mirego</a> on board, I led this project internally at Golf Canada, soliciting and organizing requirements, architecting and developing a Laravel-based API and backend to drive content, data, images and video to the mobile app, interfacing with and implementing integrations with the <strong>PGA (ShotLink)</strong> and the <strong>LPGA (R2IT)</strong> for real-time leaderboards and tee times, <strong>Ticketmaster</strong> for mobile ticketing, <strong>VenueNext</strong> for mobile ordering of food and beverages, <strong>Intellitix</strong> for RFID wristbands, and <strong>Trak-4</strong> to enable real-time player positioning display in the mobile app.</p>
<p>During the two weeks of the live tournaments, the Golf Canada Mobile App was utilized by over 17,000 event attendees, and $65,000 CAD in incremental revenue was generated via mobile ordering of F&amp;B. The Laravel-based backend is dynamic and can be utilized in future years to display and run further tournaments without the need for further development efforts or even technical ability.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://yllus.com/portfolio/golf-canada-mobile-app/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Read It Offline</title>
		<link>https://yllus.com/portfolio/read-it-offline/</link>
		
		<dc:creator><![CDATA[Sully Syed]]></dc:creator>
		<pubDate>Sat, 15 Sep 2012 17:09:36 +0000</pubDate>
				<guid isPermaLink="false">http://yllus.com/?post_type=portfolio&#038;p=2428</guid>

					<description><![CDATA[Read It Offline downloads your RSS feed articles and images to your BlackBerry PlayBook for offline viewing. It grabs the entire article &#8211; not just the one paragraph summary typically found in an RSS feed &#8211; so you won&#8217;t be <a href="https://yllus.com/portfolio/read-it-offline/"><div class="read-more"><p>Read more &#8250;</p></div><!-- end of .read-more --></a>]]></description>
										<content:encoded><![CDATA[<p><a href="http://readitoffline.com/">Read It Offline</a> downloads your RSS feed articles and images to your BlackBerry PlayBook for offline viewing. It grabs the entire article &#8211; not just the one paragraph summary typically found in an RSS feed &#8211; so you won&#8217;t be left with only half of the story.</p>
<p>Read It Offline is a <a href="http://www.readability.com/">Readability</a> client, too, allowing users to save articles to the PlayBook directly from a PC or Mac&#8217;s browser.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
