SAP BI is based on the Netweaver platform , which has a lot of programming options. Links to programming SAP BI maingthe most of the Netweaver platform are referenced here
ABAP
see ABAP in BW wiki
Adobe
Running Adobe Flash Graphs in BW Queries
AJAX
C#
Access SAP BW ODS BAPI Using C-Sharp and SAP.NET Connector 2.0
Access SAP BW OLAP BAPI Using C-Sharp and SAP .NET Connector 2.0
Visual Basic & VB.Net
Data Staging
BEx Analyzer
BW Expert Online samples
Request Peter Knoer's Documents Dinesh Mukundu's Weblogs
Migrating Advanced BEx Analyzer Workbooks - What VBA is Supported?
ODBO
Connecting to SAP BW Using Visual Basic and ADO MD
Connecting to SAP BW with Excel PivotTables and ODBO
2.0B OLE DB for OLAP
BPS / Integrated Planning
How to Load a File into BI-Integrated Planning
Java
How To Use the BI Java SDK in a Portal iView
How To Use the BI Java SDK in a J2EE Application
mySAP BI Java Integration Components
Build Custom SAP BI Applications with the SAP BI Java SDK
Universal Data Access via SAP BW Java Integration Functionality
Build Custom Analytical Applications with the New Business Intelligence Java SDK
Javascript
Web API Reference - Release 3.0B
Web API Reference - Release 3.5
http://help.sap.com/saphelp_nw70/helpdata/en/43/efb49a2480025ae10000000a1553f7/frameset.htm
XMLA
Getting Started with XMLA
XML for Analysis
Work with XMLA Web Service for BI Data in External Applications!
Web Dynpro
WDJ WDJ - Application to execute MDX query using the BI Java SDK
How To Use the BI Java SDK in a Web Dynpro Application
Web Services
Widget
BI Data Widget - Weblog Series & Pre-requisites
Yahoo Widget for BI Data - v2.01
Yahoo Widget for BI Data - v2
Yahoo Widget for BI Data
How To Consume BI Data within Yahoo Widgets
BI Data Widget v2.1
BI Data Widget
How the BI Data Widget Brings Your BI Data to the User's Desktop - Part 1