layout | title | categories | tags | status | type | published | meta |
---|---|---|---|---|---|---|---|
page |
About Felix Krause |
publish |
page |
true |
Co-Founder of ContextSDK, the best way to know when and how to monetize your user.
Follow what I'm up to on Twitter and Instagram, as well as howisFelix.today
I'm the founder of fastlane, an open source tool for iOS and Android developers to make building and releasing apps easier. Just last year, fastlane has saved over 33,000,000 developer hours and is used by hundreds of thousands of companies around the world. fastlane got acquired by Twitter, and later Google.
My work got featured on almost all major news platforms, like The New York Times, Washington Post, The Guardian, The Telegraph, Unilad, Forbes 30u30 (German), as well as being on the Forbes Cover (DACH region) with more than 25M impressions.
Privacy research
I'm an active security & privacy researcher, focused on the iOS platform that have caused major changes in iOS, like the camera indicator and better photos permission. Most recently my privacy work on InAppBrowser.com resulted in worldwide news coverage, all the way to hearings in US Congress and multiple litigation lawsuits.
Read more about my privacy publications here
Open Source
Besides fastlane, I'm involved in many open source projects, like danger & instapipe.
I'm the founder of iOS-factor.com, an open source best-practices guide on how to build and ship high-quality iOS apps.
Speaking
I spoke at various conferences around the world, most recently Madrid, Tel Aviv, Oslo, Tokyo, Melbourne, Bangalore, Vienna, Berlin and San Francisco. For speaking engagements get in touch with me.
Past employers and other projects
Google, Twitter, Root Insurances, Product Hunt, MindNode, Wunderlist, Bikemap, xcode-install, howisFelix.today amongst others. Check out the Projects overview for more details.
I moved to a new place every month without having an apartment for 2.5 years
Every other year I take the exact same photo as my Twitter/GitHub profile picture, introducing Continuous Delivery for your profile picture.
You can always reach me via Email [email protected] or Twitter.
Check out my other projects & past employers.
<script type="text/javascript"> var url = "https://backend.howisfelix.today/api.json"; var xmlHttp = new XMLHttpRequest(); xmlHttp.onreadystatechange = function() { if (xmlHttp.readyState == 4 && xmlHttp.status == 200) { var content = JSON.parse(xmlHttp.responseText) const visitors = content["websiteVisitors"]["krausefx.com"]["6m"]; document.getElementById("website-visitors").innerHTML = Number(visitors).toLocaleString() + " unique visitors the last 6m"; var photos = content["recentPhotos"] var personalCarousel = document.getElementById("personalCarousel") for (let photoIndex in photos) { let currentEntry = photos[photoIndex] let permalink = currentEntry["permalink"] // Since we have that photo right above if (currentEntry["ig_id"] == "2774359584489420424") { continue; } var linkNode = document.createElement("a"); linkNode["href"] = permalink linkNode["target"] = "_blank" var imageNode = document.createElement("span") imageNode["style"] = "background-image: url(" + currentEntry["thumbnail_url"] + ")" imageNode.setAttribute("alt", currentEntry["caption"]) linkNode.appendChild(imageNode) personalCarousel.appendChild(linkNode) if (photoIndex > 8) { break; // We don't want to load all the images } } } } xmlHttp.open("GET", url, true); // true = asynchronous xmlHttp.send(null); </script>
You can reach me easily via Twitter and email [email protected], or use the form below.
{% include contact_form.html %}
.
{% include thank_yous.md %}
You can reach me easily via Twitter and email [email protected], or use the form below.
{% include contact_form.html %}
WeAreDevelopers photos by Tamás Künsztler
<style type="text/css"> #about-social a { text-decoration: none !important; } .imageCarousel { margin-top: 30px; height: 310px; width: 100%; overflow-y: none; overflow-x: scroll; white-space: nowrap; } .imageCarousel > a > img { height: 300px; width: auto; max-width: none; /* to override page wide attribute */ display: inline-block; } #personalCarousel > a > span { /* I didn't spend the time investigating why this is necessary */ margin-right: 5px; height: 300px; display: inline-block; width: 300px; /* IG pictures should always be square */ background-size: cover; background-repeat: no-repeat; background-position: 50% 50%; } #leftCol { margin-bottom: 40px; margin-right: 30px; width: 100%; text-align: center; } @media screen and (max-width: 800px) { .imageCarousel { height: 190px; } .imageCarousel > a > img { height: 180px; } #personalCarousel > a > span { height: 180px; width: 180px; } #leftCol > img { max-width: 300px; width: 100%; } #leftCol > p { display: none; } } @media screen and (min-width: 800px) { #leftCol { width: 40%; max-width: 350px; float: left; height: 980px; } } } @media screen and (min-width: 800px) { #rightCol { width: 55%; float: right; } } } </style>