270 likes | 281 Views
Join CTO Ted from BeliefNetworks as he explores the world of software, discussing its artistic expression, its impact on society, and the skills needed to succeed in the industry. Gain insight into the importance of experience and passion, and learn about the exciting world of start-ups. Don't miss this informative presentation!
E N D
What is it like “Out There?” A Presentation to CSCE 190 Email: ted@beliefnetworks.net Twitter: @BeliefNetworks @jaxsoncreole
Currently the CTO, Co-Founder, BeliefNetworks, INC. With more than twenty years of technology experience, he spent the past seven as an architect within Microsoft Corporation working on such products and technologies as the Windows Networking Stack, Vista Audio architecture, Metadata architectures, secure Audio-Video path, and Media Center edition. Before leaving Microsoft in 2007, Tanner supported IPv6 and RFID solutions, Trustworthy Computing, Metadata Standards, Emergency/DataFusion Enterprise Architecture and Media Architectures Prior to Microsoft, Ted was CTO/VP of R&D for MongoMusic directing all aspects of knowledge discovery, machine learning, signal processing research, intellectual property management. MongoMusic was purchased by Microsoft Corp. in 2000 for 75MM. Previously, Ted was the Media Architect at Apple Computer Inc. working on adaptive media processing architectures for OS9 and OSX. In total, Ted has held instrumental roles in 4 start-ups, including Avid/digidesign, Crystal River Engineering and Spatializer, 3 tendered offers and 1 IPO. A little bit about me… 12/20/2019 2
About BeliefNetworks, Inc. • Market leading provider of related content & ad recommendations • Customers range from premium online publishers to mobile ad networks • Established 2007 • Privately Owned • Sales & Business Office: Madison Ave, NYC • R&D: Charleston, SC • All original IP 12/20/2019 3
BeliefNetworks, Inc. Service • We combine semantic intelligence and predictive analytics to deliver real time, relevant ad targeting and content recommendations to drive user engagement • Semantically contextual ad targeting • Content recommended includes articles, blogs, Tweets, video and photos • Inter- and intra-site dynamic recommendations 12/20/2019 4
Why Software? • Creating software is much like writing a movie script or creating a play. It is one of the most artistic forms of expression in the world. • Essentially anyone with practice can create amazing pieces of art with little or no barrier to entry • There is nothing that I know of that can take an “idea to money” or “idea to affect” quicker than making software
The World Of Software • The Software industry is Gi-Normous (gigantic and enormous) • Formal methods are crucial to gain an edge • Everyone basically has the same foundation • Extracurricular efforts are paramount • Gain perspective on your interest
Where to Focus? Your Love of Software Security Operating Systems Search/ Learning Media/ Games 12/20/2019 7
Where to Focus? • Mathematics - know the math love the math - duplicate MATLAB routines in C/C++/C#/JAVA/ASM • Take an elective in a social science - in most cases software is about engineering solutions that have some level of human interaction - archeology, psychology, sociology, literature • If your focusing on hardware/software take an elective in the other discipline - understand why certain processes work • Read at least one book on software development - (Code Complete by McConnell / Microsoft Press) 12/20/2019 8
Importance of Experience • Convert your class work to external solutions to real world problems. • Become a member in the IEEE/ACM or related organization/sub-organization - read all of the journals • Use social media - Linkedin/Twitter/Facebook • Internships are very useful - provides insight into commercial code development • Create your own projects /website/applications 12/20/2019 9
What are We Looking for? • Passion - If you do not care go home • Adaptability - you are learning foundation • You are not your code - check your attitude in at the door • Creativity - how do you think with no answers? • Sample code - working code goes a long way 12/20/2019 10
What To Expect For An Interview: • Interviews will consist of coding or analysis of coding problems - Linked Lists, Strings, Concurrency (see - http://maxnoy.com/interviews.html) • Practice using the same medium (e.g. paper and pencil) and time limits (e.g. 30 minutes) as the real interview. • During the interview, don't obsess over little mistakes that happen. • Don't be rude to your interviewer. (your professor is nice compared to what could happen - trust me) • Non technical questions: Why Should I Hire You? What are your personal interests?
The World Of Start-Ups • So you have a great idea.. • - Well so does everyone else.. • Three Reasons to create your own company: 1. The Technology 2. The Process 3. The Monetary Gain or Social Change
The World Of Start-Ups • The Technology • The Technology is interesting - not the focus • Many will try to down play or destroy • Need to understand that you are not the tech • Understand that it is transitory
The World Of Start-Ups • The Process • A wise person once told me “Trust The Process.” • Most are concerned with the endpoint. • Amazing affects on people and economy. • There really are no rules per-se to a start-up. • Except … • Don’t break the build , write world class code, multi-task, • Do it all as fast as possible
The World Of Start-Ups • The Money (or Social Change) • Whether most say it they are interested in the Money • “Social Change” can also be a close kin to Monetary • Both reasons are coupled and great catalyst affects • These however cannot be your sole focus • Except … • People who invest want to make 10x investment
The World Of Start-Ups What do you need to do? • Find a trusted partner (aka Co-Founder) • Understand what your building and why • Create a “pitch slide-ware” • Look for seed funding… • Look for a couple of trusted team members • Build a prototype if possible - show something running
The World Of Start-Ups What do you need to do? • Get a legal team that is familiar with startups • Incorporate - Delaware Corp C - Exchange Shares for $$ • Start looking at a Series A raise • Consider speaking with customers for refinement • Except…. • If you are in stealth mode with a seasoned team • And … if the technology or business model is disruptive For more info:http://www.idea2bank.com http://www.lisamaki.com
Some Real World Problems • Unstructured Data Analysis • Data Cleansing and Processing - measuring quality • Distributed Intelligent Agents and Systems • Distributed Data Security in The Cloud • Dynamic Systems trade Privacy versus Security • Perceptual Processing Models for Media • Wireless communications scaling • Technical Policy Concerns • Usability and User Interfaces - Haptic and other
Some Real World Problems • Map Reduction of Machine Learning algorithms: • MapReduce is a framework for processing huge datasets on certain kinds of distributable problems • Map Reduction of Machine Learning Algorithms greatly increases the amount data that can be discovered • The advantage of MapReduce is that it allows for distributed processing of the map and reduction operations. Provided each mapping operation is independent of the other, all maps can be performed in parallel
Back-Propagation Neural Network Start by initializing the input weights for all neurons to some random numbers between 0 and 1, then: 1. Apply input to the network. 2. Calculate the output. 3. Compare the resulting output with the desired output for the given input. This is called the error. 4. Modify the weights and threshold θ for all neurons using the error. 5. Repeat the process until error reaches an acceptable value (e.g. error < epsilon which means that the NN was trained successfully, or if we reach a maximum count of iterations (epochs), which means that the NN training was not successful
Back-Propagation Neural Network Weights and Error updated in Real Time
Map Reduced BPNN For Each Split Do: SplitInputVector (MyVector[]) Apply input to the network. For Each Worker Do: Modify the weights and threshold θ for all neurons using the error. MapWeightsToMemory(MyWeights[]); MapEpsilonToMemory(MyEpsison); CheckOutputAcrossWorkers(); NextWorker(); NextSplit() MergeResultVector();
The Current and Future of Computing See Gartner Hype Cycle Report: http://www.gartner.com/it/page.jsp?id=1124212
InterNet Evolution to 2020 12/20/2019 24
The Future Of Computing NEWS FLASH: The Exaflop is coming in 2018 - 100M Cores! This power will then see basic chipsets… What are we going to do with this power? See: http://www.thestandard.com/news/2009/11/16/supercomputers-100-million-cores-coming-2018 and the SC09 conference in Oregon
A Hard Problem Maybe - make a system that can perceive the differing levels of humor…
Ted Tanner, Jr. ted@beliefnetworks.net @jaxsoncreole www.idea2bank.com www.beliefnetworks.net Finding, Not Searching™ Thank You For Your Time! 12/20/2019 27