<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.7.4">Jekyll</generator><link href="/feed.xml" rel="self" type="application/atom+xml" /><link href="/" rel="alternate" type="text/html" /><updated>2019-04-17T14:20:25+00:00</updated><id>/feed.xml</id><title type="html">Financeit Technology</title><subtitle>We came to code and eat ice cream, and we're done coding.</subtitle><entry><title type="html">Introducing Purgatory</title><link href="/2013/12/06/introducing-purgatory.html" rel="alternate" type="text/html" title="Introducing Purgatory" /><published>2013-12-06T14:35:00+00:00</published><updated>2013-12-06T14:35:00+00:00</updated><id>/2013/12/06/introducing-purgatory</id><content type="html" xml:base="/2013/12/06/introducing-purgatory.html">&lt;p&gt;Hi, I’m Elan, a developer at Financeit. Recently I was tasked with adding 2-person authentication to make sure sensitive changes had two pairs of eyes reviewing and approving them. To do this I needed a way store changes without actually applying them, so they could be applied later after a manager gives the OK.&lt;/p&gt;

&lt;p&gt;So I came up with &lt;a href=&quot;https://github.com/financeit/purgatory&quot;&gt;Purgatory&lt;/a&gt;, Financeit’s first publicly released gem. Purgatory is a Rails gem that allows you to save changes to an ActiveRecord model so that they can be applied at a later time. While the changes are in this interim state they are considered to be in Purgatory. A Purgatory object stores the changes on the main object (the soul) as well as the user who made the request and the changes. Purgatory can also be used to store the creation of a new record until it is approved.&lt;/p&gt;

&lt;p&gt;Here’s an example: say you have a model called BankAccount and you don’t want your users to be able to modify a bank account’s details without a second user approving the changes. To put your changes into purgatory, just do the following:&lt;/p&gt;

&lt;div class=&quot;highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;bank_account.account_number = ‘1234567’
bank_account.transit_number = ‘12345’
bank_account.purgatory!(current_user)
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;This will add a new Purgatory in the system. To view the proposed changes, just call the ‘requested_changes’ method on the purgatory object. Note that at this point the bank account record has not yet been changed in the system. To apply the changes, you just need to call the ‘approve!’ method:&lt;/p&gt;

&lt;div class=&quot;highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;purgatory = bank_account.purgatories.last
purgatory.approve!(current_user)
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;The Purgatory gem is available as open source on GitHub &lt;a href=&quot;https://github.com/financeit/purgatory&quot;&gt;here&lt;/a&gt;. For information on all of the cool features that Purgatory provides, please take a look at our detailed documentation. Also if you have your own ideas of how to improve Purgatory, you can create an issue on the GitHub project or even fork the project and submit a pull request.&lt;/p&gt;</content><author><name>dubroe</name></author><summary type="html">Hi, I’m Elan, a developer at Financeit. Recently I was tasked with adding 2-person authentication to make sure sensitive changes had two pairs of eyes reviewing and approving them. To do this I needed a way store changes without actually applying them, so they could be applied later after a manager gives the OK.</summary></entry><entry><title type="html">Introducing the Financeit Developer API</title><link href="/2013/05/21/introducing-the-financeit-developer-api.html" rel="alternate" type="text/html" title="Introducing the Financeit Developer API" /><published>2013-05-21T11:27:00+00:00</published><updated>2013-05-21T11:27:00+00:00</updated><id>/2013/05/21/introducing-the-financeit-developer-api</id><content type="html" xml:base="/2013/05/21/introducing-the-financeit-developer-api.html">&lt;p&gt;The tech team at Financeit is proud to announce that we now have a feature-rich REST API available to partners and brokers
who would like to interact with our system without having to visit our web interface. Full documentation for the API
is available &lt;a href=&quot;https://www.financeit.ca/api/v1/index.html&quot;&gt;here&lt;/a&gt;. Here’s a list of noteworthy features:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Ability to create and manage loan applications&lt;/li&gt;
  &lt;li&gt;Ability to create new partner applications&lt;/li&gt;
  &lt;li&gt;All responses are in JSON format&lt;/li&gt;
  &lt;li&gt;Use of standard REST calls&lt;/li&gt;
  &lt;li&gt;Fully functional sandbox site to test your code before going live&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you’d like to get started with the API, hit me up at &lt;a href=&quot;mailto:elan@financeit.ca&quot;&gt;elan@financeit.ca&lt;/a&gt;. We’ll send you credentials for the
sandbox site and help you through the process to get you creating loans and/or partners through the API.&lt;/p&gt;</content><author><name></name></author><summary type="html">The tech team at Financeit is proud to announce that we now have a feature-rich REST API available to partners and brokers who would like to interact with our system without having to visit our web interface. Full documentation for the API is available here. Here’s a list of noteworthy features:</summary></entry><entry><title type="html">begin</title><link href="/2013/04/05/begin.html" rel="alternate" type="text/html" title="begin" /><published>2013-04-05T19:11:00+00:00</published><updated>2013-04-05T19:11:00+00:00</updated><id>/2013/04/05/begin</id><content type="html" xml:base="/2013/04/05/begin.html">&lt;p&gt;Hi, I’m Adnan, a developer at &lt;a href=&quot;https://www.financeit.ca&quot;&gt;Financeit&lt;/a&gt;, and
I’d like to welcome you to the &lt;a href=&quot;https://www.financeit.ca&quot;&gt;Financeit&lt;/a&gt;
tech blog. We’re doing some neat things in the consumer lending/financing world.
With this comes the opportunity to work on a number of interesting technical
challenges. Our development team has been gelling together nicely
and we want to use this space to share and discuss technical insights we might
come across.&lt;/p&gt;

&lt;p&gt;We are what they call a “Rails shop.” We believe in using the right tool
for the job, but we prefer Ruby where it is available. We try and work
in an agile fashion, but we’re not religious about it. We follow no
particular methodology, but we get our work done. Instead of
methodologies we prefer to use the values from the &lt;a href=&quot;http://agilemanifesto.org/&quot;&gt;Agile Manifesto&lt;/a&gt;:&lt;/p&gt;

&lt;blockquote&gt;
  &lt;p&gt;&lt;strong&gt;Individuals and interactions&lt;/strong&gt; over processes and tools&lt;br /&gt;
&lt;strong&gt;Working software&lt;/strong&gt; over comprehensive documentation&lt;br /&gt;
&lt;strong&gt;Customer collaboration&lt;/strong&gt; over contract negotiation&lt;br /&gt;
&lt;strong&gt;Responding to change&lt;/strong&gt; over following a plan&lt;/p&gt;

  &lt;p&gt;That is, while there is value in the items on
the right, we value the items on the left more.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The accompanying &lt;a href=&quot;http://agilemanifesto.org/principles.html&quot;&gt;twelve principles of agile software&lt;/a&gt; 
are also worth a read.&lt;/p&gt;

&lt;p&gt;I absolutely love reading and writing code. As such, I feel tremendously fortunate 
to be working in the tech industry. It affords us the opportunity to learn 
and grow while doing something we love. In the coming weeks and months
we hope to share what we’ve built, how we feel, things we’ve learnt, and both, 
our opinionated and loosely held opinions.&lt;/p&gt;

&lt;p&gt;We are not perfect, but we step forward still. Here’s to another beginning.&lt;/p&gt;

&lt;p&gt;end&lt;/p&gt;</content><author><name>thisduck</name></author><summary type="html">Hi, I’m Adnan, a developer at Financeit, and I’d like to welcome you to the Financeit tech blog. We’re doing some neat things in the consumer lending/financing world. With this comes the opportunity to work on a number of interesting technical challenges. Our development team has been gelling together nicely and we want to use this space to share and discuss technical insights we might come across.</summary></entry></feed>