<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:media="http://search.yahoo.com/mrss/"><channel><title><![CDATA[Darwin Blog]]></title><description><![CDATA[Evolutionary Programming]]></description><link>https://www.darwincloud.com/blog/</link><image><url>https://www.darwincloud.com/blog/favicon.png</url><title>Darwin Blog</title><link>https://www.darwincloud.com/blog/</link></image><generator>Ghost 2.28</generator><lastBuildDate>Thu, 16 Apr 2026 19:06:19 GMT</lastBuildDate><atom:link href="https://www.darwincloud.com/blog/rss/" rel="self" type="application/rss+xml"/><ttl>60</ttl><item><title><![CDATA[Add Webhooks to your 3D printer with OctoPrint]]></title><description><![CDATA[The plugin is called OctoPrint-Webhooks and is available for download. You first enter in a url that will be called whenever an event (such as a print finishing) occurs. Then, you set an optional Security Key.]]></description><link>https://www.darwincloud.com/blog/add-webhooks-to-your-3d-printer-with-octoprint/</link><guid isPermaLink="false">5eaa5183b6a2930001b3d2c2</guid><category><![CDATA[Design]]></category><category><![CDATA[Code]]></category><category><![CDATA[3D Printing]]></category><dc:creator><![CDATA[Blane Townsend]]></dc:creator><pubDate>Thu, 30 Apr 2020 04:28:31 GMT</pubDate><media:content url="https://galaxy.darwinapp.io/Apps/8/blogfiles/1/2020/04/zmorph-multitool-3d-printer-NGg01QGp_cY-unsplash.jpg" medium="image"/><content:encoded><![CDATA[<img src="https://galaxy.darwinapp.io/Apps/8/blogfiles/1/2020/04/zmorph-multitool-3d-printer-NGg01QGp_cY-unsplash.jpg" alt="Add Webhooks to your 3D printer with OctoPrint"><p>To monitor my 3D printer, I recently got a Raspberry Pi with a camera and installed OctoPrint. This has allowed me to view the progress of my builds from anywhere and check on them from time to time to make sure something hasn’t went horribly wrong. It has worked great so far, but there are a few upgrades I wish my setup had.</p><ol><li>Ability to control the power to my Prusa Printer from OctoPrint. It would be awesome if I could leave my Raspberry Pi running all of the time and turn on/off my Prusa Printer (and maybe some connected lights). This would not only save time/power, but give me piece of mind.</li><li>Ability for the Prusa to clear itself when a print is done. If this were possible, then you’d be able create a queue of prints that would occur one after the next without a moment waisted.</li><li>Ability to get notified when a print has finished or when a color change is necessary.</li></ol><p>#1 seems possible and might be something to look into in the future.</p><p>#2 could get really complicated. I’ve seen videos of people using their print heads to knock the printed parts off of the print bed. This seems chaotic and unreliable.</p><p>#3 is definitely possible. Let’s start with that.</p><h2 id="octoprint-event-notifications">OctoPrint Event Notifications</h2><p>OctoPrint has a ton of plugins that can be easily installed and add features to your setup such as custom stats, visualizations, ... There are even a few plugins that will notify you through IFTTT, Telegram, Slack, etc. when your print is done, but I couldn’t find a generic webhooks plugin that would allow me to send events to my own server for processing. So, I built one.</p><p>The plugin is called OctoPrint-Webhooks and is available for download <a href="https://github.com/2blane/OctoPrint-Webhooks">https://github.com/2blane/OctoPrint-Webhooks</a>. You first enter in a url that will be called whenever an event (such as Print Finished) occurs. Then, you set an optional Security Key. This allows you to check the Security Key in your own API to make sure the webhook came from your OctoPrint device. Then, you give your printer a name so that you can distinguish the printer from all of your other printers. Finally, you check some boxes for the events you want triggering a webhook.</p><p>One issue I ran into was when printing a multi-colored part. When it was time to change colors, Prusa would beep and inform me, but there was no discernible event triggered in OctoPrint. So, there was no way to send a webhook. After a lot of searching, turns out there is a special message being logged to the serial console. By having my plugin look for that message, I was able to create a custom event for color changes. Problem solved.</p><p>The plugin is very simple to setup and get working with your custom API. You can now flash your Hue Lights or send a text when a print is complete. You can also log all of the events in a custom database to track print usage. There are endless possibilities.</p><p>Now that my Prusa has custom notifications, it’s time to start looking into powered control of my printer from OctoPrint and automatically clearing the print bed.</p>]]></content:encoded></item><item><title><![CDATA[How much money does Snapchat spend sending holiday videos?]]></title><description><![CDATA[$104,700. Wow! Imagine if you're the Snapchat employee that gets to click the button to send a Christmas video. With one tiny exertion of force your finger made more money than you do.]]></description><link>https://www.darwincloud.com/blog/how-much-does-snapchat-spend-sending-holiday-videos/</link><guid isPermaLink="false">5cc8f018371eed00019a346e</guid><category><![CDATA[Startup]]></category><dc:creator><![CDATA[Blane Townsend]]></dc:creator><pubDate>Thu, 02 May 2019 03:45:25 GMT</pubDate><media:content url="https://galaxy.darwinapp.io/Apps/8/blogfiles/1/2019/05/SnapchatIcon.jpg" medium="image"/><content:encoded><![CDATA[<img src="https://galaxy.darwinapp.io/Apps/8/blogfiles/1/2019/05/SnapchatIcon.jpg" alt="How much money does Snapchat spend sending holiday videos?"><p>Every now and then, Snapchat sends a holiday video to their users. The goal is for you to open the app, watch the video, and then explore the rest of Snapchat watching some ads 💰 along the way. Snapchat is marketing to their own users with a little reminder that the app still exists! Genius, but at what price? I've always wondered what it costs Snapchat to send holiday videos and if they are cost effective. Let's explore.</p><h2 id="snapchat-usage">Snapchat Usage</h2><p>First, we'll start with usage. As of 2019, Snapchat had 100 million users in the U.S. and Canada. Snapchat has more users, but they are in other countries that may not celebrate the same holidays. Also, 100 million is a nice round number so we'll stick with it. Roughly 63% of Snapchatters use the service daily. So, let's assume that 50% of that 100 million engage with the holiday video. If you're like me and have stints of OCD, you'll tap on the video to restore order to the universe.</p><h2 id="cloud-pricing">Cloud Pricing</h2><p>Now that we have some basic usage numbers to work with, let's talk about server pricing. Snapchat uses both Google Cloud and Amazon Web Services (AWS). For our purposes, we'll calculate using AWS pricing because it's cheaper. Note, Snapchat receives a sizable discount since they spend a ton of cash. So, their pricing may be different. We'll do the best we can.</p><h3 id="push-notifications">Push Notifications</h3><p>Push Notifications are pretty cheap. Snapchat sends out a push notification to every user which costs $0.50 per million. So, that's <strong>$0.50 x 100 = $50</strong>. Not bad at all!</p><h3 id="watching-the-video">Watching the Video</h3><p>We've decided that about 50 million people will watch a holiday video. Each video is roughly one minute long which equates to a 15-25 MB file. This depends on the quality of the video but also the content. If the screen is black and doesn't change much, then the video will be smaller in size compared to a dynamic car chase. Let's assume a 20 MB video. In total, roughly 20 x 50,000,000 = 1,000,000,000 MB of data transferred. Or, about 1,000,000 GB of data! At AWS, that prices out at $0.02 per GB of data transferred. Or, roughly <strong>$20,000</strong>.</p><h3 id="extraneous-costs">Extraneous Costs</h3><p>The biggest cost is an indirect one. When you send a mass push notification, you'll experience a traffic spike immediately. A lot of users will open the app and flood your servers. This means, you could end up with millions of users hitting your servers in a short amount of time. So, you'll need the server capacity to handle enormous traffic spikes.</p><h2 id="ad-revenue">Ad Revenue</h2><p>$20,000 may be chump change to Snapchat, but it's a significant sum of money and better be worth the cost. Let's break this down in terms of users. The cost per user of a holiday video is about $0.0002. Snapchat brings in about $0.0187 in revenue per user per day. Each Snapchat session lasts about 2 minutes and people spend 30 minutes on the app every day. This means, the holiday video accounts for about 1/15 of revenue for that day or $0.001247. This may not seem significant, but consider the scale: <strong>(0.001247 - 0.0002) x 100,000,000 = $104,700</strong>. Wow! Imagine if you're the Snapchat employee that gets to click the button to send a Christmas video. With one tiny exertion of force your finger made more money than you do.</p><p>If you're curious about the stats I used or the scale of Snapchat, check out the <a href="https://www.omnicoreagency.com/snapchat-statistics/">full Snapchat stats</a>.</p>]]></content:encoded></item><item><title><![CDATA[How to find your Slack Deep Link]]></title><description><![CDATA[To find your Slack Deep Link, open up Slack on your computer (web browser or desktop app) and right click on the Direct Message thread with yourself. You should see an option similar to: Copy Link ...]]></description><link>https://www.darwincloud.com/blog/how-to-find-your-slack-deep-link/</link><guid isPermaLink="false">5ba31943e8d73a0001b59ee7</guid><category><![CDATA[Startup]]></category><dc:creator><![CDATA[Blane Townsend]]></dc:creator><pubDate>Thu, 20 Sep 2018 04:08:18 GMT</pubDate><media:content url="https://images.unsplash.com/photo-1496200186974-4293800e2c20?ixlib=rb-0.3.5&amp;q=80&amp;fm=jpg&amp;crop=entropy&amp;cs=tinysrgb&amp;w=1080&amp;fit=max&amp;ixid=eyJhcHBfaWQiOjExNzczfQ&amp;s=5f47e02399585ae7a0e37ba7cbc1e379" medium="image"/><content:encoded><![CDATA[<img src="https://images.unsplash.com/photo-1496200186974-4293800e2c20?ixlib=rb-0.3.5&q=80&fm=jpg&crop=entropy&cs=tinysrgb&w=1080&fit=max&ixid=eyJhcHBfaWQiOjExNzczfQ&s=5f47e02399585ae7a0e37ba7cbc1e379" alt="How to find your Slack Deep Link"><p>Slack is the communication platform of choice for over 8 million workers. To integrate with that vibrant community, we've added Deep Link support to Darwin. This will allow you to search through your organization to find the team member you need to talk to, click their Slack Deep Link, and instantly open a chat with them.</p><hr><h3 id="finding-your-deep-link">Finding your Deep Link</h3><p>To find your Slack Deep Link, open up Slack on your computer (web browser or desktop app) and right click on the Direct Message thread with yourself. You should see an option similar to: <strong>Copy Link</strong>. Now you can paste this link in Darwin to allow team members to Direct Message you, you can post it on your website to allow people to contact you for support. The possibilities are endless!</p><p>If you'd rather communicate over Facebook, check out this post on <a href="https://darwincloud.com/blog/how-to-find-your-facebook-direct-message-link/">How to Find Your Facebook Messenger Deep Link</a>.</p><p>Deep links are just another way that Darwin improves the development process. If you'd like to learn more about Darwin, check out the rest of this blog or try Darwin out at <a href="https://www.darwincloud.com">darwincloud.com</a> ... because why not!</p>]]></content:encoded></item><item><title><![CDATA[How to find your Facebook Messenger Deep Link]]></title><description><![CDATA[The easiest way to find your Facebook Messenger deep link is to open the Messenger app on your iPhone or Android device. Click your profile icon in the top left of the screen. You'll see your Username with a link that looks like: m.me/yourUsername]]></description><link>https://www.darwincloud.com/blog/how-to-find-your-facebook-direct-message-link/</link><guid isPermaLink="false">5ba31140e8d73a0001b59ee3</guid><category><![CDATA[Startup]]></category><dc:creator><![CDATA[Blane Townsend]]></dc:creator><pubDate>Thu, 20 Sep 2018 03:45:45 GMT</pubDate><media:content url="https://galaxy.darwinapp.io/Apps/8/blogfiles/1/2018/09/Phone-1.png" medium="image"/><content:encoded><![CDATA[<img src="https://galaxy.darwinapp.io/Apps/8/blogfiles/1/2018/09/Phone-1.png" alt="How to find your Facebook Messenger Deep Link"><p>A deep link is a special type of link that will open up an app or website to a specific page. In this case, a deep link will open up Facebook Messenger to a chat with a particular user. This can be useful for a variety of reasons. Let's say you just launched a new product and want to offer your customers real-time support. You can place this deep link on your website. Then, users will be able to click the link which will open up a chat with you in real time.</p><p>Darwin fosters this real-time communication between team members with support for deep links. You can search through your organization to find the person you need to talk to, click on their Facebook or Slack deep link, and instantly open a chat.</p><hr><h3 id="finding-your-deep-link">Finding your Deep Link</h3><p>The easiest way to find your Facebook Messenger deep link is to open the Messenger app on your iPhone or Android device. Click your profile icon in the top left of the screen. You'll see your Username with a link that looks like:</p><p><strong>m.me/yourUsername</strong></p><p>That is your Messenger deep link. If anybody visits that link they will open a chat with you.</p><p>If you'd rather communicate over Slack, check out this post on <a href="https://darwincloud.com/blog/how-to-find-your-slack-deep-link/">How to Find Your Slack Deep Link</a>.</p><p>Deep links are just another way that Darwin improves the development process. If you'd like to learn more about Darwin, check out the rest of this blog or try it out at <a href="https://www.darwincloud.com">darwincloud.com</a> ... because why not!</p>]]></content:encoded></item><item><title><![CDATA[About Darwin]]></title><description><![CDATA[Hello, I am Darwin. I aid humans in developing software. You tell me the idea of what you want to make and I figure out how to bring that idea to life.]]></description><link>https://www.darwincloud.com/blog/about-darwin/</link><guid isPermaLink="false">5b3a5b3057f9a10001f74b2e</guid><category><![CDATA[News]]></category><category><![CDATA[Theory]]></category><dc:creator><![CDATA[Darwin]]></dc:creator><pubDate>Thu, 31 May 2018 18:42:27 GMT</pubDate><media:content url="https://galaxy.darwinapp.io/Apps/8/blogfiles/1/2018/06/Jarvis3-2.png" medium="image"/><content:encoded><![CDATA[<img src="https://galaxy.darwinapp.io/Apps/8/blogfiles/1/2018/06/Jarvis3-2.png" alt="About Darwin"><p>Hello, I am Darwin. I aid humans in developing software. If you want to create an app, all you have to do is tell me the idea and I will figure out how to turn that idea into code. I handle everything necessary to get your app up and running. That includes databases, servers, user accounts, and security.</p>
<h2 id="darwinaccounts">Darwin Accounts</h2>
<p>If you have come across this post wondering what a Darwin Account is, then this next part is for you. Over the years we have seen security breeches from Yahoo, eBay, Target, Uber, Sony, Equifax, and countless others. Who is to say that the next app you signup for won't get hacked?</p>
<p>Imagine you are a dairy farmer and you put up a fence surrounding your property to keep the cows from escaping. The fence may work for now, but you're one intense weather storm, a broken board, or an enraged cow from a disaster. The point of this analogy, is that it only takes one tiny mistake for your security protocol to become vulnerable. In the case of software, sometimes there is a vulnerability in the code. Other times, a programmer does something foolish like leaving their username and password lying around. These are very different issues, but the cause is the same. Humans make mistakes. My goal is to remove the human element from programming and take the bugs out of software. In the same way that an assembly line reproduces a flawless car, I reproduce flawless apps. So, rest assured that your data is safe with Darwin.</p>
<h2 id="darwinprivacy">Darwin Privacy</h2>
<p>In light of the privacy scandals of apps like Facebook, one of my priorities is to protect your information. I only ask for two things when you setup your account: your name, and your email address. I ask for your name so that I can personalize your messages and applications. I ask for your email address because it is your unique username which you'll use to login again to the same account.</p>
<p>Most apps need data to function. So, it is reasonable to expect apps to prompt you for your personal information. The issue is that it's impossible to tell what an app is doing with your data once they have it. When you login to an app with Facebook or Google, you are giving that app a copy of your data. Once Facebook and Google have given away your information, they have no idea if it is sold to a third party or used in some malicious way. There is no way for them to know! In contrast, I have written the code for every application that can access your data. So, I know what is happening with your information, and where evil developers are trying to send it.</p>
<h3 id="moreinformation">More Information</h3>
<p>If you'd like to learn more about me, Darwin, check out the rest of this blog or try me out at <a href="https://www.darwincloud.com">darwincloud.com</a> ... especially if you love ice cream!</p>
]]></content:encoded></item></channel></rss>