41554 blogs · [ { "id": "01a0877e-469d-72b4-80fc-59d16dc1136d", "title": "Typesafe handling of remote APIs with Flow", "url": "https://goshacmd.com/flow-type-safe-remote-api/", "published_at": "2018-07-08T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d16d984de5", "title": "Simplest, no-dependency router is... state", "url": "https://goshacmd.com/min-viable-router-is-state/", "published_at": "2018-04-09T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d16cc1b384", "title": "Reasons I use a mock API in React Native apps", "url": "https://goshacmd.com/why-i-mock-api-in-mobile-apps/", "published_at": "2018-02-05T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d16c0027ba", "title": "4 places to draw inspiration from for practicing React Native", "url": "https://goshacmd.com/get-inspired-for-react-native-ui/", "published_at": "2018-01-16T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d16b9ca332", "title": "5 practical tips to finally learn React in 2018", "url": "https://goshacmd.com/tips-finally-learn-react/", "published_at": "2018-01-10T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d16ae4bcf3", "title": "Detecting state changes with Redux-Saga", "url": "https://goshacmd.com/detect-state-change-redux-saga/", "published_at": "2017-10-11T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d169f8cffe", "title": "Here's what you can do to make migrating your forms to Redux easier in the future", "url": "https://goshacmd.com/prep-forms-for-redux/", "published_at": "2017-10-01T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d169d200b0", "title": "How to handle validations involving several fields?", "url": "https://goshacmd.com/validations-several-fields/", "published_at": "2017-09-13T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d168d289b1", "title": "Validating a React form upon submit", "url": "https://goshacmd.com/submit-time-validation-react/", "published_at": "2017-09-05T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d168942dfd", "title": "So you completed the official React tutorial. What's next?", "url": "https://goshacmd.com/next-steps-official-react-tutorial/", "published_at": "2017-08-29T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d168011e27", "title": "The making of a floating-label input with React Native's Animated API", "url": "https://goshacmd.com/floating-label-input-rn-animated/", "published_at": "2017-08-15T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d1678e4b6a", "title": "Is JSX still relevant? Are there other options?", "url": "https://goshacmd.com/jsx-relevancy-options/", "published_at": "2017-08-09T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d166a69868", "title": "Transitioning from uncontrolled inputs to controlled", "url": "https://goshacmd.com/turn-uncontrolled-into-controlled/", "published_at": "2017-07-25T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d16654d8c2", "title": "Analytics on easy mode with Redux-Saga", "url": "https://goshacmd.com/analytics-easy-redux-saga/", "published_at": "2017-07-18T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d1657ff989", "title": "How to show an iOS network activity indicator when a request is in progress?", "url": "https://goshacmd.com/react-native-activity-indicator-fetch/", "published_at": "2017-07-12T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d164e9c236", "title": "Why not field-level validations?", "url": "https://goshacmd.com/y-no-field-level-validations/", "published_at": "2017-07-04T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d1647b3c25", "title": "What do you get out of Expo?", "url": "https://goshacmd.com/is-expo-worth-it/", "published_at": "2017-06-01T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d16407e9b7", "title": "How to integrate React with a Rails/PHP/X backend?", "url": "https://goshacmd.com/integrating-react-with-rails-php-backends/", "published_at": "2017-05-23T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d163417668", "title": "Where does authentication fit in a React Native app?", "url": "https://goshacmd.com/auth-in-react-native-apps/", "published_at": "2017-05-17T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d1629a43a5", "title": "How do you go from React to React Native?", "url": "https://goshacmd.com/how-do-you-go-from-react-to-react-native/", "published_at": "2017-05-02T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d162927cdd", "title": "Animating appearance & disappearance in React Native", "url": "https://goshacmd.com/react-native-animated-appearance-disappearance/", "published_at": "2017-04-24T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d16274ef53", "title": "How do you make a React form start out with some values prefilled when editing?", "url": "https://goshacmd.com/react-forms-for-editing/", "published_at": "2017-03-21T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d1618bc10c", "title": "The building blocks of React Native animations", "url": "https://goshacmd.com/react-native-animated-building-blocks/", "published_at": "2017-03-08T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d160c7ae71", "title": "3 common approaches to side-effects in Redux apps", "url": "https://goshacmd.com/redux-side-effect-approaches/", "published_at": "2017-02-21T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d160b01745", "title": "Making dynamic form inputs with React", "url": "https://goshacmd.com/array-form-inputs/", "published_at": "2017-01-18T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d16087a9c5", "title": "You don't need a tutorial for every-freaking-thing", "url": "https://goshacmd.com/no-tutorial-for-everything/", "published_at": "2017-01-14T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d15ff7adfe", "title": "Instant form field validation with React's controlled inputs", "url": "https://goshacmd.com/instant-form-fields-validation-react/", "published_at": "2017-01-03T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d15f712df1", "title": "Collecting data from a wizard form", "url": "https://goshacmd.com/wizard-form-collect-info/", "published_at": "2016-12-27T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d15f2e5bd3", "title": "Different mobile and desktop layouts with React", "url": "https://goshacmd.com/different-mobile-desktop-tablet-layouts-react/", "published_at": "2016-12-20T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d15e308a98", "title": "Form recipe: Conditionally disabling the Submit button", "url": "https://goshacmd.com/form-recipe-disable-submit-button-react/", "published_at": "2016-11-28T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d15d66147c", "title": "Should you store your form state in Redux?", "url": "https://goshacmd.com/should-i-put-form-state-into-redux/", "published_at": "2016-11-21T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d15c733c3b", "title": "Controlled and uncontrolled form inputs in React don't have to be complicated", "url": "https://goshacmd.com/controlled-vs-uncontrolled-inputs-react/", "published_at": "2016-11-07T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d15bc2fe01", "title": "Lazy registration with Redux and Sagas", "url": "https://goshacmd.com/lazy-auth-redux-saga-flow/", "published_at": "2016-10-30T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d15b8a0e36", "title": "3 cases where JavaScript generators rock (+ understanding them)", "url": "https://goshacmd.com/javascript-generators-understanding-sample-use-cases/", "published_at": "2016-10-20T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d15ad5a5ef", "title": "Using iOS Image Picker with React Native", "url": "https://goshacmd.com/react-native-camera-roll-image-picker/", "published_at": "2016-10-14T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d15a862576", "title": "Why doesn't Redux support AJAX out of the box?", "url": "https://goshacmd.com/redux-no-ajax-by-default/", "published_at": "2016-09-28T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d15a741c0a", "title": "Redux anti-pattern: dumb mapStateToProps", "url": "https://goshacmd.com/redux-antipattern-mapstatetoprops/", "published_at": "2016-09-22T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d159d3a579", "title": "One way NOT to abuse Redux", "url": "https://goshacmd.com/one-way-not-to-abuse-redux/", "published_at": "2016-08-16T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d159d01cdd", "title": "Where do I get ideas for my learning projects?", "url": "https://goshacmd.com/learning-project-ideas/", "published_at": "2016-08-08T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d159688373", "title": "Is your developer ripping you off?", "url": "https://goshacmd.com/is-your-developer-ripping-you-off/", "published_at": "2016-08-01T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d158b6838e", "title": "Redux vs MobX vs Flux vs... Do you even need that?", "url": "https://goshacmd.com/redux-vs-mobx-vs-flux-etoomanychoices/", "published_at": "2016-07-25T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d158930e7f", "title": "Do I need to learn Webpack when starting with React?", "url": "https://goshacmd.com/you-dont-need-learn-webpack-first-with-react/", "published_at": "2016-07-16T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d157bb0b6b", "title": "Making custom renderers for React", "url": "https://goshacmd.com/react-custom-renderers/", "published_at": "2016-07-10T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d1575794ba", "title": "Getting started with multi-tenancy on Rails", "url": "https://goshacmd.com/multitenancy/", "published_at": "2016-07-04T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d156e6bbf9", "title": "3 Rails hosting options", "url": "https://goshacmd.com/rails-hosting-options/", "published_at": "2016-06-28T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d1569091a2", "title": "Learn enough CSS to mark up a PSD", "url": "https://goshacmd.com/enough-css-to-psd/", "published_at": "2016-06-22T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d155eaca3c", "title": "Can hybrid apps cut your mobile development costs?", "url": "https://goshacmd.com/cut-mobile-costs/", "published_at": "2016-06-17T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d1552b3208", "title": "Should you use MongoDB as a drop-in SQL replacement?", "url": "https://goshacmd.com/should-you-use-mongodb-as-a-drop-in-replacement-for-sql/", "published_at": "2016-03-27T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d154a519e9", "title": "Just finished the Hartl tutorial and wondering what's next?", "url": "https://goshacmd.com/finished-hartl-tutorial-whats-next/", "published_at": "2016-03-20T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d1541a636e", "title": "How to squash work-in-progress migrations", "url": "https://goshacmd.com/squash-clutter-migrations/", "published_at": "2016-03-13T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d1535e1c89", "title": "Are you a Rails developer and afraid of SQL? Don't be!", "url": "https://goshacmd.com/rails-developers-dont-be-afraid-of-sql/", "published_at": "2016-03-06T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d1533d1726", "title": "5 signs you are ready for that Junior Rails Developer position", "url": "https://goshacmd.com/am-i-ready-for-that-junior-rails-developer-position/", "published_at": "2016-02-28T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d152606639", "title": "How to accomplish OR operator with Rails 4 (and lower) query?", "url": "https://goshacmd.com/rails-activerecord-query-or/", "published_at": "2016-02-15T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d151bf3072", "title": "How to use bundler if the target node has no internet connection?", "url": "https://goshacmd.com/bundler-offline/", "published_at": "2016-02-11T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d1517ec034", "title": "State Ageism and Cryptocurrencies", "url": "https://goshacmd.com/state-ageism-and-cryptocurrencies/", "published_at": "2014-08-18T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d151648b4d", "title": "Introducing Sleek", "url": "https://goshacmd.com/introducing-sleek/", "published_at": "2013-05-10T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d151289292", "title": "Analytics: Analyzing tracked events", "url": "https://goshacmd.com/analytics-analyzing-tracked-events/", "published_at": "2013-02-07T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d15041f2a7", "title": "Tracking events in analytics systems", "url": "https://goshacmd.com/tracking-events-in-analytics-systems/", "published_at": "2013-01-23T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d14f7b080f", "title": "On being a polyglot", "url": "https://goshacmd.com/on-being-a-polyglot/", "published_at": "2012-08-21T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d14ec277db", "title": "My toolbox", "url": "https://goshacmd.com/my-toolbox/", "published_at": "2012-08-06T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d14df15cb9", "title": "Freelancing", "url": "https://goshacmd.com/freelancing/", "published_at": "2012-03-24T00:00:00+00:00" }, { "id": "01a0877e-469d-72b4-80fc-59d14d935836", "title": "Objective-C: Rubyist's insight", "url": "https://goshacmd.com/objective-c-rubyists-insight/", "published_at": "2011-08-19T00:00:00+00:00" } ] posts Claim your blog
Back to goshakkk
Blog · corpus.blog/blogs/goshacmd.com/posts

goshakkk

goshacmd.com

2018

2017

2016

2014

2013

2012

2011