Worldwide Headquarters International Headquarters

Worldwide Headquarters
Phoenix, Arizona
1899 L Street NW, 5th Floor
Washington, DC 20036
1.800.424.9299, ext. 4
+1.202.463.4860, ext. 4
22601 North 19th Avenue, Suite 200
Phoenix, AZ 85027
International Headquarters
Tokyo, Japan
Keizersgracht 62/64
The Netherlands
+31 20 5206884
Aoyama King Bldg 4th floor-A
2-9-10, Shibuya, Shibuya-ku, Tokyo
150-0002 Japan
A s C h a i r m a n o f B l a c k b o a rd i t ’s p ro b a b l y i m p o l i t i c o f m e
t o s ay t h i s , b u t B u i l d i n g B l o c k s i s my f avo r i t e p rog r a m .
I’m sure I’ll have to make up to somebody for saying that, but it’s true.
The reason Building Blocks is so important is that the category of e-Learning is still very
young. There is an incredible demand for innovation in our field, and Building Blocks and
this conference in particular provide us an opportunity to advance the field together.
I am also excited about Building Blocks because we really do think of Blackboard as a
community, not just a company, and nothing exemplifies that more than Building Blocks.
When I attend events like this, when I read the postings in the Developers Network forum,
when I use Building Blocks, I can see that we have see many people working together to
achieve broad and important goals.
So, welcome to the Second Annual Blackboard Building Blocks Developers Conference. I
view this conference as a twin event to the Blackboard Users Conference. In its second
year, we continue to focus on professional development and technical innovation. This
year we’ve extended the technical sessions to include a beginner track, advanced technical
topics, and new and emerging technologies including the new APIs for the Microsoft .NET
framework, innovations on campus, and presentations from Microsoft and Sun experts.
I encourage everyone to mine the conference for its full value. Meet as many colleagues as
possible, and let’s continue these relationships when we return home. There is much we
can offer each other in advice, strategies, and the ability to review and share each other’s
work. Many Blackboard employees are attending this conference, and I hope you will
introduce yourselves and give us the benefit of your thoughts and suggestions.
Enjoy this event. Enjoy our home town of Washington, DC, and enjoy the beautiful
campus of Georgetown University, our kind hosts for this event. Please join me in
thanking our sponsors, Microsoft and Sun Microsystems, and in thanking Charlie
Leonhardt and his team at Georgetown for their generous support of this event.
S c h e d u l e
2 6
2 7
Salon D
Salon E
Salon F
Salon D
Salon E
Salon F
Advanced Topics
New and Emerging
Advanced Topics
New and Emerging
8:00-8:55am Registration/Continental Breakfast — South Gallery
8:00-8:55am Continental Breakfast — South Gallery
9:00-9:45am Keynote Session, Matthew Pittinsky, Chairman, Blackboard Inc. — Salon H
9:00-9:45am Understanding Blackboard
9:45am -10:30 am Introduction to Building
Blocks (non technical)
Java APIs in Detail
What is .NET?
10:30am-10:45pm Coffee Break — South Gallery
10:45am-11:30pm Introduction to Java
11:30-12:15pm Java IDEs - Eclipse
Data Storage and Migration
.NET Development Tools
9:45-10:30am Portal Modules and Module
Types (Java)
10:45-11:30 am B2 and Web Services (Java)
12:15-1:30pm Lunch — Salon H
2:15 - 3:00 pm Java APIs in Detail
Evaluation Tools: Building
Blocks that Simplify Grading
.NET APIs in Detail
Understanding TagLibs and
Developing Portal Modules
3:00 -3:30 pm Coffee Break — South Gallery
3:30-4:15pm Blackboard and Content Types Internationalization (Java)
for the Building Block
Sponsor Session: How-to Build
NET Applications Using Visual
Studio .NET
Building Usable Building
Blackboard 6 Authentication
Development Ideas - What
Should You Build?
Empowering Faculty with
Building Blocks
Data Management Using
Building Blocks
Sponsor Session: Advanced
Java Technologies Update
10:30 - 10:45 am Coffee Break — South Gallery
Test Driven Development (Java) My First Building Block (.NET)
1:30 pm - 2:15pm My First Building Block (Java) Managing Performance in the
Development Lifecycle (Java)
Java Event API
Building Blocks and Systems
Integration: Technology and
Team Organization
4:15 pm Day One concludes
5:00-8:00 Evening Event — Spy Museum/Zola Bus Pickup in Lobby of Conference Center
11:30 - 12:45 pm Lunch — Salon H
12:45-1:30 pm Security and Authentication
with Building Blocks (Java)
1:30 -2:00 pm Coffee Break — South Gallery
2:00 - 2:45pm Building Blocks and Blackboard — a Look Ahead — Salon H
D e s c r i p t i o n s
This track is for developers familiar with Java but not familiar with the Building Blocks Java APIs and
developing Building Blocks. This track is designed to give attendees the basics of what they’ll need to
get started developing their own Building Blocks in Java and JSP.
Java APIs in Detail
Introduction to Building Blocks (non technical)
Blackboard and Content Types for the Building Block Developer
Jan Poston Day
Tracy Engwirda
Building Blocks is more than a collection of APIs, it is a program to support a growing community of
developers. This session is an overview of the program, the resources available to developers including:
the Development Advisor Group, Webinars, listservs, etc. This session will highlight some of the key
not-to-be-missed sessions at the conference as well as, opportunities for further learning and hands-on
courses. Presented by Jan Poston Day, Director, Building Blocks.
An overview of how to create and work with Building Blocks that act as new content types
(e.g., WYSIWYG) or that access external content systems.
Bob Alcorn
In this session, Blackboard Software Engineering developers will walk through the APIs for the
Building Blocks Java SDK, covering them at a detailed level.
Por tal Modules and Module Types (Java)
Tom Joyce
Samg Shin
The Blackboard Portal System provides institutions the ability to deliver a variety of information
customized to each type of user on campus. In this session, attendees will learn, step by step, how to
create their first Portal Module Building Block using the Java Building Blocks SDK.
An introduction to the Java programming language and development environment, focusing
technologies relevant to developing for Blackboard Academic Suite.
Understanding Blackboard TagLibs
Introduction to Java
Java IDEs — Eclipse
Tom Joyce
Tom Joyce
Tag Libraries are re-usable code components defined by the Java Servlet specification. This session
provides an overview of the tags used to create the Blackboard look and feel within your Extension.
A discussion of Integrated Development Environments (IDEs) with special focus on Eclipse.
B2 and Web Ser vices (Java)
My First Building Block (Java)
Bob Alcorn
Tracy Engwirda
Webservices are a means for easily sharing data and information between systems. In this session you
will learn how Building Blocks work in the world of web services. We will talk about Building Blocks
as producers and consumers of web services. Topics include: XML, SOAP, UDDL, and WSDL.
Building Blocks technology gives developers the power to integrate systems, tools and services with
Blackboard Learning System and Blackboard Portal System. In this session attendees will learn, step by
step, how to create their first Building Block for Blackboard Learning System using the Java Building
Blocks SDK.
D e s c r i p t i o n s
Security and Authentication with Building Blocks (Java)
Evaluation Tools: Building Blocks that Simplify Grading
Tom Joyce
Jeff Nuckles, Instructional Design Specialist, Joliet Junior College
An overview of the security in the Blackboard Learning System. Learn how Building Blocks interact
with this framework, including Authentication, Authorization, and Java permissions.
The trend of moving traditional grading methods online creates a need for tools to assist educators in
evaluating student’s course work. This presentation takes you from determining the need to the final
roll-out of an evaluation tool and includes a discussion of the gradebook API and successful use of
navigation elements.
Building Blocks and Blackboard — A Look Ahead
Bob Alcorn, David Yaskin
A look ahead to new technologies, integration opportunities, and how Blackboard is taking advantage
of Building Blocks.
Test Driven Development (Java)
Tim Moore
This set of sessions is designed to cover advanced topics in the area of design and development of
Building Blocks.
Test-Driven Development is a popular methodology for creating simple, flexible, and fully-tested code.
This session will provide an introduction to unit testing with JUnit, an overview of Test-Driven
Development techniques, and a brief example of TDD in practice, used to implement a simple Building
Java APIs in Detail
Internationalization (Java)
Bob Alcorn
Bob Alcorn
In this session, Blackboard Software Engineering developers will walk through the APIs for the
Building Blocks Java SDK, covering them at a detailed level.
A discussion of the roadmap for internationalization of the Blackboard Academic Suite, with specific
coverage of internationalization and localization facilities in Application Packs 2 and 3.
Data Storage and Migration (Java)
Java Event API
Bob Alcorn
Tracy Engwirda
A discussion of the pitfalls in storing custom data in the Blackboard Academic Suite. Includes best
practices for enabling “portable” data and ideas for creating flexible data structures.
The Event APIs give developers the ability to insert data and query the Blackboard database in near
real-time. This session provides an overview of the Java-based Event-driven user APIs and an in-depth
look at the API class libraries.
Managing Performance in the Development Lifecycle (Java)
Steve Feldman
As Blackboard installations grow in adoption, developers must always be conscious of the
performance implications for their extensions. This session discusses various performance concerns in
the Blackboard Academic Suite and outlines best practices for extension developers.
Building Usable Building Blocks
Zahra Safavian
Conventional wisdom is that it is easy to build something hard to use, and hard to build something
that is easy to use. Come learn from Blackboard’s usability and user interface design team how to
design your Building Block with ease-of-use and accessibility in mind.
D e s c r i p t i o n s
Development Ideas Exchange — What Should You Build?
My First Building Block (.NET)
Greg Ritter
Biran Zhang
So many ideas and so little time… This interactive panel session will cover information about the
kinds of tools and services that System Administrators, faculty members, and students need, or wish
they had. Bring your own success stories as well as ideas to share with others. Interested in working
collaboratively? Try out ideas at this session.
Attendees will learn, step by step, how to create their first Building Block using the Building Blocks
SDK for the Microsoft (R).NET Framework.
.NET APIs in Detail
Biran Zhang
Data Management Using Building Blocks
Yordanos Baharu, Manager CIDD, George Washington University
In this session, Blackboard Software Engineering developers will walk through the APIs for the
Microsoft .NET framework, covering them at a detailed level.
At The George Washington University (GWU), we developed custom tools using Building Blocks
technology to accomplish critical system administration needs. The tools are used to change data
source key, change the status, maintain courses using data source keys and to enroll users in a course.
Understanding TagLibs and Developing Por tal Modules (.NET)
Interested in understanding how new technologies are being used on campus? This is the track for
developers interested in hearing how they can use the Microsoft .NET Framework to develop and
customize Blackboard Learning System and Blackboard Portal System, hear from fellow Building
Blocks developers about their creative efforts, and get the latest news from the Building Blocks
Developers Conference sponsors.
What is .NET?
Bruce Jackson
An overview of Microsoft’s .NET technology. Attendees will learn the core elements of .NET,
including a discussion of the .NET Framework and the Common Language Runtime.
.NET Development Tools
Biran Zhang
In this session, Visual Studio .NET will be presented with examples including: creating a new project,
using assemblies, debugging, and tips & tricks.
Biran Zhang
The Blackboard Portal System provides institutions the ability to deliver a variety of information
customized to each type of user on campus. In this session, attendees will learn, step by step, how to
create their first Portal Module Building Block using the Blackboard TagLibs and the Building Blocks
SDK for the Microsoft .NET Framework.
Building Blocks and Systems Integration: Technolog y and
Team Organization
Carlos Cortez, Systems Integration Head, University of Santo Tomas
Michael Carreon, Information and Computer Studies Department, University of Santo Thomas
The University of Santo Tomas has begun an undertaking that aims to tap the vast potential of
Blackboard Building Blocks to expand the capabilities of the LMS and to seamlessly integrate the
Blackboard LMS with the other systems within the University, such as the Student Information System.
This presentation will outline our approach and methodologies for our formal Building Blocks and
System Integration Project, utilizing the successful project management strategy similarly employed in
the e-Learning Access Program of the University.
D e s c r i p t i o n s
Blackboard 6 Authentication
Tom Scavo, Web Project Manager, Bowling Green State University
Integrating Blackboard 6 with an existing enterprise authentication and single sign-on solution.
Designing, writing and installing a custom authentication module. Using web services to validate client
Empowering Faculty with Building Blocks
William Koffenberger, Director CIDD, George Washington University
The George Washington University (GWU), customized its Blackboard Learning System to meet
specific faculty needs. In our centrally managed Blackboard Learning System that includes integration
with SCT Banner, faculty tools were requested to add TA’s, guest lecturers, and library users to
courses, delete courses and merge/manage multiple courses using ‘course merge’ tools.
Sponsor Session: How-to Build NET Applications Using Visual
Studio .NET
Bruce Jackson, Technical Program Manager, Microsoft
How to do some of the most common tasks in Visual Studio including: build a Mobile Application
using .NET Compact Framework, build and consume web services, write Windows Forms
Application, and write a Windows service.
Sponsor Session: Advanced Java Technologies Update
Sang Shin, Java Evangelist, Sun Microsystems
Learn about Java technologies from a Sun Microsystems expert. Including J2EE, J2ME, and Javacard.
S p o n s o r s
Blackboard would like to thank our
sponsors for their support of the
Second Annual Blackboard Building
Blocks Developers Conference
P r e s e n t e r s
Bob Alcorn
Bob Alcorn, Chief Architect, Platform, Architecture and Database Team is responsible for the
underlying Blackboard Learning System and Blackboard Portal System design. An original member of
the Blackboard team, Bob was lead developer on the Blackboard’s CourseInfo Enterprise software.
Bob worked with Matthew Pittinsky and Stephen Gilfus to define the vision of Building Blocks and
develop the APIs available today.
Carlos Cor tez
Yordanos Baharu
Jan Poston Day
Yordanos Baharu is the Manager of the Instructional Technology Lab at The George Washington
University. In this capacity Yordanos oversees the technical operations of the Instructional Technology
Lab and the Blackboard implementation at GW. Yordanos has over 10 years experience in Higher
Education developing, supporting and implementing Instructional Technology solutions.
Jan is the Director of the Building Blocks program. She works closely with the Software Engineering
team to ensure that Building Blocks developers have access to the technology and information they
need to develop and test their Building Blocks. Jan also works with Building Blocks developers from
commercial and academic communities to help them design and market their Building Blocks to the
Blackboard community. Jan has over 12 years experience in software development, consulting and
business development.
Daniel Cane
Daniel Cane, Senior Vice President of Research & Development and co-Founder, is a veteran of
designing, creating, and deploying e-Learning Education platforms. In 1996, in collaboration with
Cornell students and faculty, he built the forerunner of the Blackboard product line. He has been
fundamental in the design and release of over seven products into the e-Education space. Mr. Cane is a
pioneer in the development of online learning platforms, raising the bar with his products by
implementing advanced features while maintaining high degrees of ease of use. Daniel works closely
with the Senior Vice President of Software Engineering to evaluate new technologies and products for
integration. Daniel is a leader in the design and development of Blackboard Content System.
Carlos Cortez, along with Michael Carreon is a leader in the University of Santo Tomas (UST)
e-LeAP B2+SI (Building Blocks + Systems Integration) Project under the e-Learning Access Program
of the University of Santo Tomas. Carlos is the lead database programmer of the Oracle-based Student
Information System of the University.
Tracy Engwirda
Tracy Engwirda, Principal Consultant, Global Services - Asia Pacific, uses Building Blocks to help clients in
her region extend their Blackboard platform and integrate functionality to meet their specific environment
and needs. This is achieved through both hands-on design and development of Building Blocks in
partnership with the client institutions, and also through training of local developers at these institutions so
they can build their own Building Blocks, with the Blackboard Release 6 and Blackboard ML platforms.
Steve Feldman
Michael Carreon
Michael Carreon, along with Carlos Cortez is a leader in the University of Santo Tomas (UST)
e-LeAP B2+SI (Building Blocks + Systems Integration) Project under the e-Learning Access Program of
the University of Santo Tomas. Michael is a faculty member of the Information and Computer Studies
Department of the Faculty of Engineering.
Steve Feldman, Director of Performance Engineering is responsible for leading Blackboard’s initiative
of Software Performance Engineering (SPE). He leads a team dedicated to promoting the awareness of
performance design patterns in the planning and design phases of the application lifecycle, optimizing
the existing performance of the application during the development process and executing use case and
scenario-based benchmarks during the quality assurance phase of the lifecycle. Steve joined Blackboard
in late 2003 after several successful years as a Lead Performance Engineer for Manugistics. One
highlight to note at Blackboard is that his team recently implemented SPE during App Pack 2 enabling
greater then 2X global performance and capacity gains in the Learning Suite.
P r e s e n t e r s
Bruce Jackson
Tim Moore
Bruce Jackson, Technical Program Manager at Microsoft has been writing software for over 25 years.
For the past ten years, Bruce has been employed by and for Microsoft to contribute on a number of
shipping products, beginning with Windows 95, and to work with Microsoft partners and ISVs. Bruce
is certified by Microsoft in C#, C++, and Visual Basic and a Microsoft Certified DBA in SQL Server.
Tim Moore, Senior Performance Engineer collaborates with the Software Engineering and Quality
Control teams to measure and improve the performance of all of Blackboard’s products. Over the past
five years Tim has worked on development and testing of several Blackboard applications, from
CourseInfo Enterprise Edition to the upcoming Application Pack 2.
Tom Joyce
Jeff Nuckles
Tom Joyce, Product Manager, is a key member of the Platform, Architecture and Database Team
within the Blackboard Software Engineering organization. As a Product Manager, Tom evaluates new
technologies and analyzes the impact of integrating these with the Blackboard platform. Prior to
joining the Software Engineering team, Tom was a Senior Consultant within the Blackboard Global
Services division. While a consultant, Tom worked closely with nearly 100 institutions world-wide to
develop custom end user authentication solutions, integrate Blackboard Learning System and
Blackboard Portal System with other systems and applications on campus, and build custom tools to
meet client needs.
Jeff Nuckles is an Instructional Design Specialist for Joliet Junior College in Joliet, Illinois and teaches
computer science and graphic design courses at Waubonsee Community College in Sugar Grove,
Illinois. Jeff has worked as a freelance graphic designer for companies such as DiscoverCard and built
complex web applications for several other businesses. He has developed websites for Bosch,
Blaupunkt, ADP and Lion’s Club International.
William Koffenberger
William Koffenberger is the Director of the Center for Instructional Design and Development and
Instructional Technology Lab at the George Washington University. During his tenure at the George
Washington University, Mr. Koffenberger has worked on several large-scale university wide faculty
development, course development, classroom modernization and distance education projects. Under
his direction and leadership his unit created a Web based course management system, specialized and
intensive skill development initiatives for faculty, and has collaborated with other campus
organizations to facilitate the effective use of technology in the classroom and in distance learning
delivery. Mr. Koffenberger serves on several faculty and administrative committees at George
Washington University including: Research and Instructional Technology Committee; Center for
Instructional Design and Development Advisory Committee; Research Technology Advisory
Committee (ad hoc); Columbian College Language Lab Study Group; Electronic Thesis and
Dissertations Committee and is the project lead for the Blackboard LS implementation at GW. He also
represents GW and higher education institutions through service on the Product Advisory Board for
Blackboard Incorporated.
Matthew Pittinsky
Trained as a social studies teacher, Blackboard Inc. Chairman Matthew Pittinsky comes from a family
of educators. A leading executive in the field of e-Learning, Matthew co-founded Blackboard in 1997
with a mission to “transform the Internet into a powerful environment for teaching and learning.” As
Chairman, Matthew leads Blackboard’s corporate and product strategy from an educator’s perspective.
He also serves as Blackboard’s chief “evangelist” to the academic and financial communities, and leads
the company’s internal communications and culture-building activities.
In addition to his full time responsibilities at Blackboard, Matthew is a Ph.D. candidate at Columbia
University Teacher’s College studying the sociology of online learning. He recently completed his first
book project on e-Education as editor of The Wired Tower (Prentice Hall: 2002), and serves as a
contributor or commentator to numerous print, radio and television media.
Greg Ritter
Greg Ritter, Business Development Manager, builds relationships between Blackboard and independent
software vendors through the Blackboard Developer Network. A former English professor, Greg has
been with Blackboard since 1999, first as a consultant in Global Services then in Business
Development. He has worked extensively with both Blackboard clients and Building Blocks vendors.
P r e s e n t e r s
Zahra Safavian
David Yaskin
Zahra Safavian, a User Interface Specialist, is responsible for the user interface for the Blackboard
Portal System. She works closely with other members of the requirements team to design and test new
features that are both attractive and usable. Prior to joining Blackboard, Zahra worked for Catalyst
Solutions in Baltimore, MD where she managed projects and wrote requirements, and she was an
adjunct faculty member at the University of Baltimore, where she taught introductory Web design and
David Yaskin, VP President of Product Strategy, coordinates strategy for all components of the
Blackboard Academic Suite, manages the Blackboard Portal System team, and is a key advisor to
our Building Blocks team. During his 5-years at Blackboard, David has lead Technical Consulting,
Product Management, and Quality Assurance. He has 18 years of experience developing and
managing software.
Tom Scavo
Biran Zhang is a Software Engineer at Blackboard who specializes in development using Microsoft
.NET technology. Biran graduated from The College of William and Mary in 2002 holding a B.S
degree in Computer Science with a Math minor. Since then he has served as a consultant at Stanford
University, a key C# developer for ePortaro and the Blackboard Learning System for the Microsoft
.NET Framework.
Tom Scavo has been involved with web development, web architecture, and web education for over
six years. As Web Project Manager at Bowling Green State University, he was the prime architect of
BGSU Authentication, which was rolled out concurrently with Blackboard 5 in August 2001. In the
fall of 2003, he wrote a Blackboard 6 custom authentication module based on web services, which
was released campus-wide in January 2004. While at BGSU, Tom designed and taught courses such as
“Web Application Development” and “Enterprise Computing” to advanced undergraduates. In the
spring of 1998, from his Syracuse University office in New York, Tom and colleagues synchronously
delivered a course titled “Programming for the Web” to undergraduates at Jackson State University
in Mississippi.
Sang Shin
Sang Shin is a Java Technology Evangelist at Sun Micrososytems. Sang’s duties include evangelizing
important Java technologies such as Jini network technology, Java 2 Platform, Enterprise Edition
(J2EE), Enterprise JavaBeans technology (EJB) and Java 2 Platform, Micro Edition (J2ME), along with
related technologies like XML and Web Services, to a worldwide developer audience. Sang Shin has
been with Sun Microsystems for more than 14 years working on various research and engineering
projects in data communication, networking, and Internet areas. He also teaches computer science
courses at Brandeis University.
Biran Zhang