Introduction

Hey there! My name is Jimmy. I'm a lifelong learner with a special interest in language theory.

I have a BSc in Computer Science and Mathematics from UVic and a Thesis MSc in Computer Science from SFU.

I'm originally from South America but I'd been moving around most of my childhood, split across Asia, South America, and the Caribbean. Eventually, I came to Canada to pursue higher education and settled here.

Philosophy

I believe that software systems should be simple, modular, evolvable, and consistent. However, exceptions exist, so we shouldn't blindly follow any of these principles.

They should be simple because for complex systems to work and continue to work, they must start from simple systems that work. Over-engineering is the antithesis of this.

Their design and implementation should be modular because it makes it easier to maintain and refactor in the future.

We also want the specification of the software to be evolvable. In other words, we want the spec to facilitate future spec changes. This helps with backwards compatibility.

Lastly, we should strive to be consistent, both in the behaviour and in the implementation of the software.

Experience

My main background is in programming language design and implementation, with extensive experience developing tools in Rust, C/C++, Java, and OCaml. Furthermore, I also have some experience building web apps.

Elements

Text

This is bold and this is strong. This is italic and this is emphasized. This is superscript text and this is subscript text. This is underlined and this is code: for (;;) { ... }. Finally, this is a link.


Heading Level 2

Heading Level 3

Heading Level 4

Heading Level 5
Heading Level 6

Blockquote

Fringilla nisl. Donec accumsan interdum nisi, quis tincidunt felis sagittis eget tempus euismod. Vestibulum ante ipsum primis in faucibus vestibulum. Blandit adipiscing eu felis iaculis volutpat ac adipiscing accumsan faucibus. Vestibulum ante ipsum primis in faucibus lorem ipsum dolor sit amet nullam adipiscing eu felis.

Preformatted

i = 0;

while (!deck.isInOrder()) {
    print 'Iteration ' + i;
    deck.shuffle();
    i++;
}

print 'It took ' + i + ' iterations to sort the deck.';

Lists

Unordered

  • Dolor pulvinar etiam.
  • Sagittis adipiscing.
  • Felis enim feugiat.

Alternate

  • Dolor pulvinar etiam.
  • Sagittis adipiscing.
  • Felis enim feugiat.

Ordered

  1. Dolor pulvinar etiam.
  2. Etiam vel felis viverra.
  3. Felis enim feugiat.
  4. Dolor pulvinar etiam.
  5. Etiam vel felis lorem.
  6. Felis enim et feugiat.

Icons

Actions

Table

Default

Name Description Price
Item One Ante turpis integer aliquet porttitor. 29.99
Item Two Vis ac commodo adipiscing arcu aliquet. 19.99
Item Three Morbi faucibus arcu accumsan lorem. 29.99
Item Four Vitae integer tempus condimentum. 19.99
Item Five Ante turpis integer aliquet porttitor. 29.99
100.00

Alternate

Name Description Price
Item One Ante turpis integer aliquet porttitor. 29.99
Item Two Vis ac commodo adipiscing arcu aliquet. 19.99
Item Three Morbi faucibus arcu accumsan lorem. 29.99
Item Four Vitae integer tempus condimentum. 19.99
Item Five Ante turpis integer aliquet porttitor. 29.99
100.00

Buttons

  • Disabled
  • Disabled

Form