SlideShare a Scribd company logo
1 of 29
Software Development Project – II
          CSE - 3200

          GingerBread
             Bangla
           KeyBoard

                                    1
MahTab Ahmed
                  (0907006)
                 Kaidul Islam
                  (0907016)
Supervised by:
Bishnu Sarker
Lecturer
Dept. of Computer Science & Engineering
Khulna University of Engineering &
Technology, Khulna


                                          2
The things motivate us to work
          on an old idea ?
 There are several Bangla keyboards on
android in the market already and those are
used also.

                      So
  It might be a question on mind why we have
             reinvented the wheel ?

                                               3
The things motivate us to work
         on an old idea ?
 In market, there are three major keyboards
are now available.

The old of them is Mayabi Keyboard which
has both an fixed and phonetic layout and
was widely popular on those early years



                                               4
Mayabi KeyBoard




Phonetic Layout        Fixed Layout
                                      5
Mayabi KeyBoard
 This can be used to write Bangla/Bengali in Bangla
supported device (E.g. XPERIA)
Main features:
        * Swipe space bar to change language.
        * Bangla fixed layout keyboard.
        * Bangla phonetic keyboard
        * English keyboard.
        * Bangla and English dictionary for word
prediction.
        * Many smilies.
        * Many symbols.



                                                       6
Limitations of Mayabi
But………..
The google play page states that –

       “This keyboard will not work on your
phone if your phone does not support Bangla
font viewing/rendering.”

 That’s a Big problem. This means this
keyboard can’t render Bangla on a large amount
of device
                                                 7
Ridmik Keyboard
 The Keboard Better than Mayabi can be said
Ridmik Keyboard
 It has a large extent of features :
 Bangla phonetic keyboard (like your favorite Avro
keyboard).
 Bangla Unijoy National layout (giving enough space for a
key to let you press on)
 Bangla & English word prediction/suggestion for faster
writing
 7 themes including Gingerbread, ICS & the Ridmik theme
5. Swipe Space bar to change mode (English, Bangla, Unijoy)

                                                         8
Ridmik Keyboard




English Layout                Fixed Layout
                                             9
Limitations of Ridmik Keyboard
 The problem of this is also Bangla Rendering
 Also the fixed keyboard Layout is not user
friendly for windows users
 Bangla is not rendered properly with its own
rendering engine
 So many users with poor configuration device
can’t get the usability.



                                             10
Projonmo KeyBoard
 This is developed by one of the
undergraduate team of KUET
 Fulfill many features that lack on the other
two keyboard e.g. Bangla Rendering
 Has introduced some new new technique
e.g. text to image replacement for fixed layout
 Has introduced an user friendly Layout like
QWERTY format which is pretty much feasible.

                                                  11
Limitations of Projonmo
 Bangla Rendering Engine has critical test case
some problems
 Word Suggestion is poor and has no enriched
dictionary
 Word suggestion Manipulation is pretty much
time consuming and inefficient
 provides poor UI


                                                   12
Projonmo KeyBoard




English Layout
                        Bangla Layout   13
Our KeyBoard
 It seems that each keyboard has some
limitations which provides a bad user
experience
 Gingerbread Bangla Keyboard is introduced
to fulfill these lackings
 It is based on the open source project of
English Gingerbread Keyboard of Steven Lin



                                              14
What it Provides ?




                     15
In End User Term
 It provides –
       Bangla Fixed & Phonetic Layout, English
      layout.
      Rich User Interface
       Capability of writing in different
      keyboard mode without switching in
      other application
       provides faster experience

                                                  16
In End User Term
 It provides –
       a large extent of user configuration




                                               17
End user Term

 provides different layout for landscape
and normal orientation




                                            18
Layout




         19
End User Term
 Offers pop up key selection along
with MULTI-TOUCH support




                                      20
End User Term
 provides Bangla And English word
suggestions




                                     21
Fixed Layout Format




                      22
In Higher Term
 It provides –
       well optimized Dictionary Searching
      Algorithm i.e. suffix Trie
       some portion is implemented in
      Native C++ for faster usability and time
      efficiency
       Binary Dictionary is used which is built
      in JSON for faster manipulation

                                                   23
In Higher Term
 It provides –
       implements Standard Android IME
      lifecycle
       works with primary code instead of
      unnecessary key mapping




                                             24
IME Life Cycle




                 25
Limitations
 Is slow in some perspective for
unnecessary checking
 has no different themes




                                    26
Future Plan
We will launch this on google market. In
this perspective it is now in intermediate
phase.
To optimize the keyboard By reducing
time and space complexity.
 To extend the fixed keyboard in such a
way that it can take JUKTAKKHOR at one
key stroke.


                                             27
Reference
 Android GingerBread KeyBoard
Source:https://github.com/g1011999/Gingerbread-
Keyboard
Author : Steven Lin
 Android Developer Website
  IME Life Cycles

Source:http://developer.android.com/guide/topics/t
ext/creating-input-method.html

                                                  28
Thank you




            29

More Related Content

What's hot

Programming Languages
Programming LanguagesProgramming Languages
Programming Languages
Mohamed Omar
 

What's hot (20)

1. reason why study spl
1. reason why study spl1. reason why study spl
1. reason why study spl
 
Computer languages
Computer languagesComputer languages
Computer languages
 
AT Software/Apps Demonstration
AT Software/Apps DemonstrationAT Software/Apps Demonstration
AT Software/Apps Demonstration
 
Levels of programming languages
Levels of programming languagesLevels of programming languages
Levels of programming languages
 
Classification of Programming Languages
Classification of Programming LanguagesClassification of Programming Languages
Classification of Programming Languages
 
Lecture 11
Lecture 11Lecture 11
Lecture 11
 
Programming Languages
Programming LanguagesProgramming Languages
Programming Languages
 
Introduction to Machine translation - AEM
Introduction to Machine translation - AEMIntroduction to Machine translation - AEM
Introduction to Machine translation - AEM
 
Computer language
Computer languageComputer language
Computer language
 
what is assembly language by faisal shahzad
what is assembly language by faisal shahzadwhat is assembly language by faisal shahzad
what is assembly language by faisal shahzad
 
classification of computer language
classification of computer languageclassification of computer language
classification of computer language
 
Computer programming language generations
Computer programming language generationsComputer programming language generations
Computer programming language generations
 
Computer Language
Computer LanguageComputer Language
Computer Language
 
Presentation on computer language
Presentation on computer languagePresentation on computer language
Presentation on computer language
 
Computer languages
Computer languagesComputer languages
Computer languages
 
Programming fundamentals presentation
Programming fundamentals presentationProgramming fundamentals presentation
Programming fundamentals presentation
 
introduction to assembly language.
introduction to assembly language.introduction to assembly language.
introduction to assembly language.
 
What you should know before starting to learn programming?
What you should know before starting to learn programming?What you should know before starting to learn programming?
What you should know before starting to learn programming?
 
Programming language and process
Programming language and processProgramming language and process
Programming language and process
 
Coding Introductory Lesson Upper Elementary
Coding Introductory Lesson Upper ElementaryCoding Introductory Lesson Upper Elementary
Coding Introductory Lesson Upper Elementary
 

Similar to The Next Phase Android Bangla KeyBoard

Similar to The Next Phase Android Bangla KeyBoard (20)

The Ring programming language version 1.5.3 book - Part 5 of 184
The Ring programming language version 1.5.3 book - Part 5 of 184The Ring programming language version 1.5.3 book - Part 5 of 184
The Ring programming language version 1.5.3 book - Part 5 of 184
 
The Ring programming language version 1.5.4 book - Part 5 of 185
The Ring programming language version 1.5.4 book - Part 5 of 185The Ring programming language version 1.5.4 book - Part 5 of 185
The Ring programming language version 1.5.4 book - Part 5 of 185
 
The Ring programming language version 1.5.1 book - Part 4 of 180
The Ring programming language version 1.5.1 book - Part 4 of 180The Ring programming language version 1.5.1 book - Part 4 of 180
The Ring programming language version 1.5.1 book - Part 4 of 180
 
The Ring programming language version 1.9 book - Part 6 of 210
The Ring programming language version 1.9 book - Part 6 of 210The Ring programming language version 1.9 book - Part 6 of 210
The Ring programming language version 1.9 book - Part 6 of 210
 
The Ring programming language version 1.5.2 book - Part 5 of 181
The Ring programming language version 1.5.2 book - Part 5 of 181The Ring programming language version 1.5.2 book - Part 5 of 181
The Ring programming language version 1.5.2 book - Part 5 of 181
 
The Ring programming language version 1.3 book - Part 81 of 88
The Ring programming language version 1.3 book - Part 81 of 88The Ring programming language version 1.3 book - Part 81 of 88
The Ring programming language version 1.3 book - Part 81 of 88
 
The Ring programming language version 1.9 book - Part 97 of 210
The Ring programming language version 1.9 book - Part 97 of 210The Ring programming language version 1.9 book - Part 97 of 210
The Ring programming language version 1.9 book - Part 97 of 210
 
The Ring programming language version 1.10 book - Part 99 of 212
The Ring programming language version 1.10 book - Part 99 of 212The Ring programming language version 1.10 book - Part 99 of 212
The Ring programming language version 1.10 book - Part 99 of 212
 
The Ring programming language version 1.10 book - Part 6 of 212
The Ring programming language version 1.10 book - Part 6 of 212The Ring programming language version 1.10 book - Part 6 of 212
The Ring programming language version 1.10 book - Part 6 of 212
 
The Ring programming language version 1.4 book - Part 2 of 30
The Ring programming language version 1.4 book - Part 2 of 30The Ring programming language version 1.4 book - Part 2 of 30
The Ring programming language version 1.4 book - Part 2 of 30
 
The Ring programming language version 1.2 book - Part 77 of 84
The Ring programming language version 1.2 book - Part 77 of 84The Ring programming language version 1.2 book - Part 77 of 84
The Ring programming language version 1.2 book - Part 77 of 84
 
The Ring programming language version 1.5.1 book - Part 173 of 180
The Ring programming language version 1.5.1 book - Part 173 of 180 The Ring programming language version 1.5.1 book - Part 173 of 180
The Ring programming language version 1.5.1 book - Part 173 of 180
 
The Ring programming language version 1.4.1 book - Part 2 of 31
The Ring programming language version 1.4.1 book - Part 2 of 31The Ring programming language version 1.4.1 book - Part 2 of 31
The Ring programming language version 1.4.1 book - Part 2 of 31
 
Top Programming Languages of 2020
Top Programming Languages of 2020Top Programming Languages of 2020
Top Programming Languages of 2020
 
The Ring programming language version 1.3 book - Part 4 of 88
The Ring programming language version 1.3 book - Part 4 of 88The Ring programming language version 1.3 book - Part 4 of 88
The Ring programming language version 1.3 book - Part 4 of 88
 
The Ring programming language version 1.7 book - Part 6 of 196
The Ring programming language version 1.7 book - Part 6 of 196The Ring programming language version 1.7 book - Part 6 of 196
The Ring programming language version 1.7 book - Part 6 of 196
 
Hire golang developers and make the shift to brighter business future (build ...
Hire golang developers and make the shift to brighter business future (build ...Hire golang developers and make the shift to brighter business future (build ...
Hire golang developers and make the shift to brighter business future (build ...
 
The Ring programming language version 1.2 book - Part 4 of 84
The Ring programming language version 1.2 book - Part 4 of 84The Ring programming language version 1.2 book - Part 4 of 84
The Ring programming language version 1.2 book - Part 4 of 84
 
The Ring programming language version 1.8 book - Part 6 of 202
The Ring programming language version 1.8 book - Part 6 of 202The Ring programming language version 1.8 book - Part 6 of 202
The Ring programming language version 1.8 book - Part 6 of 202
 
The Ring programming language version 1.6 book - Part 5 of 189
The Ring programming language version 1.6 book - Part 5 of 189The Ring programming language version 1.6 book - Part 5 of 189
The Ring programming language version 1.6 book - Part 5 of 189
 

Recently uploaded

Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
ZurliaSoop
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
heathfieldcps1
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
QucHHunhnh
 

Recently uploaded (20)

Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
Dyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptxDyslexia AI Workshop for Slideshare.pptx
Dyslexia AI Workshop for Slideshare.pptx
 
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
2024-NATIONAL-LEARNING-CAMP-AND-OTHER.pptx
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Google Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptxGoogle Gemini An AI Revolution in Education.pptx
Google Gemini An AI Revolution in Education.pptx
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
SOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning PresentationSOC 101 Demonstration of Learning Presentation
SOC 101 Demonstration of Learning Presentation
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the Classroom
 
ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701ComPTIA Overview | Comptia Security+ Book SY0-701
ComPTIA Overview | Comptia Security+ Book SY0-701
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024FSB Advising Checklist - Orientation 2024
FSB Advising Checklist - Orientation 2024
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structure
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 

The Next Phase Android Bangla KeyBoard

  • 1. Software Development Project – II CSE - 3200 GingerBread Bangla KeyBoard 1
  • 2. MahTab Ahmed (0907006) Kaidul Islam (0907016) Supervised by: Bishnu Sarker Lecturer Dept. of Computer Science & Engineering Khulna University of Engineering & Technology, Khulna 2
  • 3. The things motivate us to work on an old idea ?  There are several Bangla keyboards on android in the market already and those are used also. So It might be a question on mind why we have reinvented the wheel ? 3
  • 4. The things motivate us to work on an old idea ?  In market, there are three major keyboards are now available. The old of them is Mayabi Keyboard which has both an fixed and phonetic layout and was widely popular on those early years 4
  • 6. Mayabi KeyBoard  This can be used to write Bangla/Bengali in Bangla supported device (E.g. XPERIA) Main features: * Swipe space bar to change language. * Bangla fixed layout keyboard. * Bangla phonetic keyboard * English keyboard. * Bangla and English dictionary for word prediction. * Many smilies. * Many symbols. 6
  • 7. Limitations of Mayabi But……….. The google play page states that – “This keyboard will not work on your phone if your phone does not support Bangla font viewing/rendering.”  That’s a Big problem. This means this keyboard can’t render Bangla on a large amount of device 7
  • 8. Ridmik Keyboard  The Keboard Better than Mayabi can be said Ridmik Keyboard  It has a large extent of features :  Bangla phonetic keyboard (like your favorite Avro keyboard).  Bangla Unijoy National layout (giving enough space for a key to let you press on)  Bangla & English word prediction/suggestion for faster writing  7 themes including Gingerbread, ICS & the Ridmik theme 5. Swipe Space bar to change mode (English, Bangla, Unijoy) 8
  • 10. Limitations of Ridmik Keyboard  The problem of this is also Bangla Rendering  Also the fixed keyboard Layout is not user friendly for windows users  Bangla is not rendered properly with its own rendering engine  So many users with poor configuration device can’t get the usability. 10
  • 11. Projonmo KeyBoard  This is developed by one of the undergraduate team of KUET  Fulfill many features that lack on the other two keyboard e.g. Bangla Rendering  Has introduced some new new technique e.g. text to image replacement for fixed layout  Has introduced an user friendly Layout like QWERTY format which is pretty much feasible. 11
  • 12. Limitations of Projonmo  Bangla Rendering Engine has critical test case some problems  Word Suggestion is poor and has no enriched dictionary  Word suggestion Manipulation is pretty much time consuming and inefficient  provides poor UI 12
  • 14. Our KeyBoard  It seems that each keyboard has some limitations which provides a bad user experience  Gingerbread Bangla Keyboard is introduced to fulfill these lackings  It is based on the open source project of English Gingerbread Keyboard of Steven Lin 14
  • 16. In End User Term  It provides –  Bangla Fixed & Phonetic Layout, English layout. Rich User Interface  Capability of writing in different keyboard mode without switching in other application  provides faster experience 16
  • 17. In End User Term  It provides –  a large extent of user configuration 17
  • 18. End user Term  provides different layout for landscape and normal orientation 18
  • 19. Layout 19
  • 20. End User Term  Offers pop up key selection along with MULTI-TOUCH support 20
  • 21. End User Term  provides Bangla And English word suggestions 21
  • 23. In Higher Term  It provides –  well optimized Dictionary Searching Algorithm i.e. suffix Trie  some portion is implemented in Native C++ for faster usability and time efficiency  Binary Dictionary is used which is built in JSON for faster manipulation 23
  • 24. In Higher Term  It provides –  implements Standard Android IME lifecycle  works with primary code instead of unnecessary key mapping 24
  • 26. Limitations  Is slow in some perspective for unnecessary checking  has no different themes 26
  • 27. Future Plan We will launch this on google market. In this perspective it is now in intermediate phase. To optimize the keyboard By reducing time and space complexity.  To extend the fixed keyboard in such a way that it can take JUKTAKKHOR at one key stroke. 27
  • 28. Reference  Android GingerBread KeyBoard Source:https://github.com/g1011999/Gingerbread- Keyboard Author : Steven Lin  Android Developer Website IME Life Cycles Source:http://developer.android.com/guide/topics/t ext/creating-input-method.html 28
  • 29. Thank you 29