Tech 101 @ delray tech spaces
-
Upload
leo-hernandez -
Category
Technology
-
view
184 -
download
2
Transcript of Tech 101 @ delray tech spaces
Tech 101 @ Delray Tech Spaces
Leo Hernandez@leojh
We need your input!
Introductions
The very basics of computing● Basic function of a computer is to take in
input of commands and data to operate on.● Commands are small tasks for computers:
● Add● Subtract● Put things in and out of memory
Consider1 + 1
What is the operation and what is the data?
Consider1 + 1
What is the operation and what is the data?
In this case you’re giving the computer the numbers to add as data and the operation to perform, add.
Let’s go through some history of tech.
1s and 0s● Binary Code - the raw machine language in
1s and 0s● Example of Binary code:
10 0011 = 431010 0000 1001 = 2569
Assembly● Because working with 1s and 0s sucked● Let’s you program directly on chip but at
least using symbols
mov $1, %rax # system call 1 is write
mov $1, %rdi # file handle 1 is stdout
mov $message, %rsi # address of string to output
mov $13, %rdx # number of bytes
syscall # invoke operating system to do the write
(Because working with Assembly also sucked)
Higher Level Languages
C● Still a popular early high level language. ● Was created by Bell Labs to port UNIX from
Assembly.● Lets you get close to the metal by
manipulating memory directly.● Used mostly by systems, drivers, database,
and game developers
C++● C’s offspring. It’s a superset of C, meaning it
contains all of C’s features plus more.● Introduced Object Oriented Programming.● C and C++ exploded in late 80s as PCs
began to support them● Used mostly by systems, drivers, database,
and game developers
Java● The magic language from the 90s.● It made Object Oriented Programming
mainstream.● It runs on a Virtual Machine so you’re higher
from the metal but leaves the memory management to the Virtual Machine.
● Resurging because of Android
This turned out to be mostly a pipe dream at the time.
.Net● King in South Florida● Kind of a copy of Java.● Catered strongly to Corporations and big
Enterprise companies● Centers around a closed ecosystem of
Microsoft tech (think Comcast bundle)● Currently going through a “glasnost” moment
PHP - Python - RubyOpen Source languages mostly used for Web DevelopmentEmphasis on strong tooling, community, and ease of useLead the way of anti-enterprise movementThey get out of your way
JavaScriptArguably the most important language in the world right nowRuns in every web browserUsed to be the redheaded stepchildCurrently going through its Golden Age
Two popular kinds
Databases
Relational Databases● The most popular one mostly everyone is
familiar with or has heard of● Access and write data with SQL language● Stores data in tabular tables that have
relationships with each other● Hard to design properly and refactor● Examples: SQL Server, MySQL, Oracle,
SQLite
NoSql Databases● Kind of a new thing● Stores data as whole objects● Access data through API● Typically faster to read/write than Relational
Databases● Examples: MongoDB, Cassandra,
Memcached
You ain’t seen nothing yet!
Looking at the future
How will the future be possible?● Artificial Intelligence and Data Science will
lead to more indirect automation and autonomy of systems.
● Social impact of these emerging technologies will be huge (more job displacement, automation, disruption of traditional industries)
The self driving car● Autonomous car only possible because of
fringe technologies● Apparently coming sooner than later● Will completely change society● Will disrupt Auto and Insurance industries
forever
We hope to have you back!
Reach out to me: @leojh
Thank you!