Hello World

Welcome to my personal blog. This is where I go to write about the things that interest me most.


  • I have been working on a ruby rails app and ran into a peculiar problem using Docker. Whenever I tried to add a gem, I would run docker-compose run web bundle install and I would get the error message,


  • Ruby Rails development

    The problem I am trying to solve is “How does a software application dynamically create forms and allow users to submit data?”. In answer to the question, I will be creating a category, question, response, answers tables to do just that.


  • Ruby Rails development

    For work, I built an educational software tool for radiologists. The application provides radiologists a dashboard for viewing their exams. They are able to cycle through each exam and see all the exam data in a popup (modal) window.


  • Machine Learning

    For the first series of tutorials, I learned what it means to use Supervised Learning. Supervised learning tries to answer the question How does the input relate to the output?. Essentially, supervised learning is a strategy for creating a function that can provide accurate outputs based on former experience (e.g. training sets of data).


  • iOS Development

    After several months of tutorials and building demo iOS apps, I finally got around to building the real thing. My brother built the original Gadolinium Calculator app using C# about two years ago. A request was put in to have a second version of the app to make the table view sortable/deletable. I thought it fitting that I would build the second version.


  • In this article, I will be paraphrasing and summerizing an article given to me by my project manager titled “10 powerful strategies for breaking down User Stories in Scrum (with cheatsheet)


  • iOS Development

    I read that I should use stackviews whenever possible. It obscures the constraints from the developer to help create consistency and simplicity.


  • iOS Development

    For my pro-bono project building a simple calculator app, I put together a basic interface that has two input boxes and some labels. I created IBOutputs and IBActions for the form fields and added some basic logic to make sure everything is hooked together properly.


  • iOS Development

    I had a lot of trouble getting things to line up the way I wanted to. I couldn’t figure out how to make my text labels multilined without readjusting all the stackviews. I couldn’t figure out how to get the switch button to display and have it align center. I am not sure if there is something I am not understanding or if the storyboards are just have limitations.


  • iOS Development

    This is my first attempt to build the interface for viewing the gadolinium calculator. I used all stackviews which will make the controls highly adaptable to any device. I will need to customize the button and the text at the bottom to display more cleanly.


  • iOS Development

    Last post, I was able to set up the Meal class to handle data persistence. I can now add controls that allow the user to interact with the data so their information is saved on their file system.


  • iOS Development

    I have finished with the apple’s development tutorial for iOS using swift. It is now time that I venture off into the wild and try to build things. My first application will be pro bono project for the radiology department. They are looking to update an existing application called the Gadolinium Calculator

    The existing app was built in object c and thought it best to build the application from scratch using swift. I have never developed in object c, however, I was told that swift provides a lot of benefits that makes starting over worth it.


  • iOS Development

    I will be persisting the Meal class data using the NSCoding protocol. I subclass the NSObject to override the encordeWith methods.


  • iOS Development

    because edit is a modal seque and the cancel button is a push seque, I added logic within cancel() to detect which seque was used to navigate to the page.


  • iOS Development

    The next step to making a fully functional crud app is adding edit functionality to the. I will need to allow the user to open an edit/details page when a specific review is tapped.


  • iOS Development

    Segue


  • iOS Development

    Table Views can be a bit overwelming when first using them. There is a lot of inherited methods from UITableViewController, UITableViewDelegate, and UITableViewDataSource. I think the best way to think of table views is the same way as any other custom control. Basically, you are dynamically generating the table, rows, cells and defining a view(s) that go in each cell. So, all the crazy amount of methods made available are there to help with generating those fields which explains why there are so many.


  • iOS Development

    table view


  • iOS Development

    Building a data model using swift is done similarly to any other server side language. You define the properties, add some getters and setters, and create an inializer for creating an instance of the object. All is well, and familarity is king.


  • iOS Development

    Hey, things are starting to look like a normal app. I added some cool stuff such as the star images and transofring them into buttons. I added accessbility logic so blind & visually impaired can navigate the page.


  • iOS Development

    In this post, I am summarizing an article by Medium.com. https://medium.com/ios-os-x-development/interface-builder-is-great-storyboards-are-not-69232a91044e


  • iOS Development

    View Structure Diagram


  • iOS Development

    I am adding a 5 star rating system to the meal tracker app. I will use a custom control that will hold and display the logic required. Essentially, I create a UIStackView subclass to create an independant, modularized view that can be injected independantly into any view.


  • iOS Development

    I can create a button that will allow users to import images from their camera roll. I am able to do this with a few lines of code using the UIImagePickerControllerDelegate


  • literature

    In the book Breaking the Habit of Being You, author Joe Dispenza argues that we are addicted to our stress responses. He claims that those responses give us a rush that can feel awakening, however, it can also cause us to be addicted to our problems. A lot of these addictive behaviors can eventually turn into an identity within itself, causing a person to seek out specific problem to receive the right stress response that fits that makes up their identity.


  • iOS Development

    In this post I would like to answer the question “What is the difference between a control, a delegate, and a gesture recognizer. The three are major compontents to user interaction with the UIKit Framework and it is not clear to me their responsibilities.


  • iOS Development

    An application is able to create an interface through the use of the UIKit framework. Everytime a new element is added to the GUI, a UIView object is created and all mapped in a hierarchal structure using super/sub view relationships. For example, when a developer adds a text field to the UIView, a UITextField object is created which is a sub view in the hierarchy.


  • iOS Development

    I get the concept of a delegate. You need something from someone and you send a delegate to do the job. Ideally, this person is highly specialized and fit for delegating for a specific purpose.


  • Food

    My visit to Tampa has taught me a lot in the ways of spanish cooking. Most meals are served with rice and beans since they are so abundant in the region. Plantains are a thing. They are large green banana’s that I sometimes see in Wisconsin.


  • iOS Development

    Reference counting describe how an application tracks references and pointers for objects and whatnot. Most typical use case for reference counting is for garbage collection.


  • SIIM

    For this years SIIM Hackathon, my team seeks to answer the question “How do healthcare organizations reliably communicate patient data?”. My teams answer to this question is through the use of FHIR (Fast Healthcare Interoperability Resources) so healthcare systems can bridge the communication gap.


  • E-Patient Dave


  • SIIM

    I am flying out to D.C. to participate in this years 2018 SIIM Hackathon with my gangster IT co-workers. We will be building a communications api for funsies that will help track follow-up non-critical (FUNC) actionable findings made by our beloved Radiologists. The goal would be to pull in all follow-ups and manage the data. It is unclear to me as of now what we will do with that data once we have it. Presummably, health care professionals would be able to schedule and assign responsibility for those follow up actions.


  • iOS Development

    For me, development is all about familiarity. I feel highly profient with a language/framework when I am willing to explore and make mistakes. It is a sort of playfulness that comes from starting over and over and over until I get it right.


  • iOS Development

    Well, I’ve done it. I killed Pitch Perfect app. Time of death? 6:29. Family has stated that the app is DNR. May you go in peace my friend.


  • iOS Development

    A segue is a way of linking two story boards together. For this application, I use a seque to transfer the audio session to the other storyboard. I use the AVAudioRecorder class to handle the recording logic by calling its methods inside the recordButton action. I then create a delegate that lets AVAudioRecorder know about the applications recording logic inside the view controller.


  • iOS Development

    I added the recording functionality to the recordAudio action inside the viewController. I am able to easily do this using AVFoundation. AVFoundation is a framework specific for handling audiovisual media in iOS apps. As a developer, I can use AVFoundations built in classes, and the class methods to record, save and play audio recordings for my app.


  • iOS Development

    XCode makes it easy to add additional views to your application using drag and drop functionity. I am able to create a visual representation of my application without writing code. This has the advantage of having a proof of concept application without using wireframes, diagramming or other deplorable practices.


  • iOS Development

    In summary, I went back and redid the first three lessons for Udacity’s ios tutorial. In these tutorials I got to learn autolayout, IBAction/IBOutput, the XCode IDE, constraints, adding images, and other nuances when it comes to setting up a GUI interface.


  • iOS Development

    I had to go back and rewatch a few tutorial videos on iOS development. Learning iOS development has proven to be so much different than anything I have done before that I am not able to figure things out as I go. Instead, I went back and really made sure that I knew how to use autolayout, ibaction, iboutput, and basic xcode ide controls and functionality. I was able to somewhat skate by doing android development since a) android studio is similar to intellij which I know my way around well. b) android uses java which I don’t know too well, however, I have worked with in the past and can usually figure things out comfortably.


  • iOS Development

    In one of the tutorials, I noticed I was having a difficult time understanding how to get the UI elements to line up right. So I do what I normally do when I get stuck and frustrated, I read. In an article by Medium, they had a small tutorial working with stackviews. Basically, the goal was to line up your column and rows of elements inside stackviews. Once the elements and stackviews were created, we then created constraints for the stackviews fr the alignment, spacing, and distribution properties. Once those were set, then the spacing of the form elements were distributed equally within their stackviews and displayed nicely among the various screen sizes and portrait/landscape mode.


  • Ruby Rails development

    I am building a new application for work using ruby rails. The project requires that I use an already existing database. This is the first time i have had to do this. The application I am building is primarily a data driven website using the existing databases’s information. That means I will not be designing and creating models for the ORM. I find myself a bit surprised how different it is to develop this way.


  • iOS Development

    The LLVM is made up of a set of open source project libraries. The major advantage the LLVM offers is the ability for the optimization logic to remain independant of the front/back end. This means that the front/back end technology can be changed, upgrade, improved, swapped, etc. It also means the LLVM compiler can evolve independantly without having to be held back by the limitations of front/backend technologies.

    LLVM Optimizer


  • iOS Development

    the UIViewController lifecycle can be broken up into four parts; appearing, appeared, disappearing, disappeared. An app dev can then use methods that are executing, before and after each event. Each of these four parts can be considered stages. And these stages are important to understand when it comes to executing code since it will have an impact on performance, appearance and load times.


  • Ruby Rails development

    I have a bad habit of memorizing syntax for a given language and never really understanding what is going on. Frameworks make it easy to ignore all the things going on in the background and I want to get out of the habit.


  • iOS Development

    Today I started to delve into some of the classes and objects that help make up the UI for iOS apps. ThThe major pieces are UIResponder class, UIView, UIViewController, and UIApplication.


  • iOS Development

    I was able to position the UI elements on the page using constraints. I made sure they display as I want them for all devices. I achieved this goal by setting up constraints for each of the layouts. I linked each element to one another as opposed to the position relative to the screen. It is important to do it this way since the user can switch from landscape to potrait.


  • iOS Development

    Today we attached an event handler to the button click action. I was able to do this using XCodes control-click functionality and dragging an arrow to the ViewController. By doing that, we are able to create methods that are accessible to the Interface Builder which will handle the UI actions for us.


  • iOS Development

    In this lesson, we use XCodes object library to drag and drop a button. We then set the background through the attributer editor on the right side of the IDE. These concepts are straight forward and important and may be a bit dull for those who are knowlegable of UI design.


  • Philips Bridge

    Hibernate in 2003 introduced the concept of abstract SQL and had the java world thinking in terms of persisting objects. Unfortunately, hibernate tightly coupled code to the database communication making it difficult for the use of other persistant technologies.


  • IPhone Development

    I know what you’re thinking. What the hell happened to android? Hey what the hell did hpapen to android? Didn’t I just spend the last two months following a series of tutorials learning views, layouts, preferences, shared resources, multi threading with async and async loader?


  • IPhone Development

    I downloaded an IPhone app hoping to get a development environment set up. Nothing works and I feel silly. It all started during a meeting yesterday. Someone asked we make some updates to a IOS app that we support. However, our mobile developer no longer works with us. So, me laying in bed last night imagined myself showing up to the coffee shop early this morning and single handedly knocking it out myself.


  • Ruby Rails development

    Philips Analytic Bridge provides a data and development platform which allow Health Care institutions to collaborate data and software solutions. Bridge is able to take clinical systems and store their data into a normalized central database. Application developers then has the option to use their integrated ruby rails technology stack for development.


  • Android development

    I will be learning how to use a SQLite Database for the next set of tutorials. I personally have a fascination with databases. My favorite part of any new project has always been the designing of a well normalized database. I find that if I get that part right, then writing the application logic is so much easier.


  • Android development

    In this exercise, we remove the hardcoded preference setting in xml/pref_general.xml file so SharedPreferences API will load the users selected preference location. We are able to accomplish this goal by using the SharedPreferenceChangeListener which will detect when a user has made a change to their preference location setting. Then, if there is a change, we call the Forcast Adapter to query the weather info and refresh the activity.


  • Android development

    In this exercise, we allow users to use preferences to determine where they want to get their weather data from. As we have done in previous exercises, we will be using the SharedPreferences api to handle storing and communicating data. Our jobs will be to correctly set up the files and call the well documented methods to do the work for us.

    Location Preference


  • philosophy

    In a recent philosophy discussion, the host Stephen West discusses the topic of love. He claims that modern concepts of love was greatly influenced by the romanticism era. It is difficult to describe what love must had been like before then since I live in a culture that embraces the romantic version of love.


  • philosophy

    When discussing Nietzsche, many break down his work into three major categories


  • Good morning

    It has been fun learning exactly what Jekyll is. Jeykll is a blogging framework that allows people to build content management system (CMS) using folders and files. This is a different approach to building a CMS than wordpress because wordpress’s uses a database.


  • Android development

    In this exercise, the tutorial had me add a Settings Activity and a link in the menu bar to that page. To achieve this goal, I did the following


  • Android development

    I learned that android has easy ways of handling validation using the interface OnPreferenceChangeListener. Basically, users are forced to enter a valid number since we are able to check their input before the application submit their changes.


  • Android development

    It has been a challenge understanding some of the Preference concepts that are being taught in this exercise. For example, we use the PreferenceScreen in our XML file. However, when I look up the documentation trying to understand exactly what it does, it says


  • Android development

    My goal is to allow a user to modify the application using preference settings. To achieve this goal,


  • Android development

    Exercise 6.4 solves the problem of How can a person set preferences for a given app. To solve this problem we make a separate activity that allows a user to select or unselect a checkbox for displaying a specific settings. For this exercise, the specific setting is whether or not to show the bass circle while the app is playing music.

    Home Page Settings Page


  • Jeykll

    This is the first time I used a framework like Jekyll. I will be going over the technologies the framework uses.


  • philosophy

    Existentialism - allaboutphilosophy.org


  • philosophy

    Rationalism vs Empiricism


  • Android development

    sunshine exercise 6.02


  • Android development

    sunshine exercise 6.01


  • Ruby Rails development

    I never really took the time to learn asset pipelines. I always had used the default configuration to work with bootstrap and never gave it a second thought. I am now in a situation where I need to use custom styles.


  • More Loader Stuff

    sunshine exercise 5.01


  • Philips AI Platform

    I have reached a point where I can no longer move forward in my learning until I sort out a few things. The Philips AI tutorials talks about Entities and EntityManagers. I have no clue what either of those things are so in this post I will discuss my findings


  • Ruby Rails development

    Learnin Philips Informatics Analytics platform has been fun. They use different technologies that solve different problems. More specifically, they set out to solve healthcare problems using healthcare specific solutions.


  • Android development

    To understand this lesson we need to make sure we understand how load managers work. LoaderManager has three methods onCreateLoader(), onLoadFinished, onLoadReset().


  • Ruby Rails development

    It has been a while since I have touched Ruby Rails. There was a time when I was fervently building a rails app any chance I got.


  • Personal Development

    Last January, I decided to learn mobile development. At first with android and then iOS. My daily habits have changed quite a bit since taking on my new hobby. For one, I drink a lot less alcohol. I now enjoy my weekends in the presence of pandora, my macbook, a quiet coffee shop and a end of night celebration beer.


  • Android development

    Exercise: Exercise 5 - leveraging Loaders


  • Android development

    extend loadmanager store id of load override oncreate load


  • Android development

    Final,Void, Static


  • Android development

    One thing that never occured to me until this lesson, is how much mobile apps must constantly be changing states. When dealing with web applications, a user session is stored in a browser until closed or whatnot.


  • Android development

    I am growing an appreciation how nice having intenses are. You take common tasks such as opening a website, a map or simply sharing text (like a url) and make it streamline.


  • Android development

    Opening a webpage is simple right? It should be, at least in my experience as a developer it is. You have an ancor tag and the ancor tag will then allow the user to click and be on their merry.


  • Android development

    Did I say learning Android is hard? Well, for me this is especially true. I have worked with Java before, however, not a whole lot. This is also the first mobile tutorial I have taken too. Lot of learning curves thrown at me.


  • Android development

    I have been taking android development tutorials for the last month for 1 - 4 hours a day. In that time I learned one thing, Android development is hard. Really hard… None of it is intuitive to me. The Java language hurts my brain.


  • jekyll update

    Something weird happens when you have a single programmer producing applications and then you hire on more programmers. New problems arise. First, how does your team communicate? do they talk verbally or are they on a chat client? Do they work on the same projects or separate?


subscribe via RSS