Live data from Hacker News

TDLib – Build Your Own Telegram Client

telegram.org

61–70 of 101 posts

Re: TDLib – Build Your Own Telegram Client

#61

Unless they release the server code, no, you can't build your own "Telegram" yet. The original article's title was misleading, thankfully the HN submission title was amended to correct it. Still useful of course for anyone creating third-party clients, but an entirely different matter.

Aye aye! Both Telegram and Signal scare me.

We're building an MIT/ZLIB/Apache2 Open Source End-to-End Encrypted alternative that is a fully P2P decentralized app (dApp), see: https://hackernoon.com/so-you-want-to-build-a-p2p-twitter-wi... !

Currently it supports signed/verified messages, haven't added cyphered/private messages yet to the API, but it is available in the SEA (Security, Encryption, Authorization) utility library underneath - but that should be coming soon, and of course love any contributions!

Also, the "server" has no special application logic on it, it is just another peer in the network that can help with WebRTC signaling or being a websocket relay. It cannot middleman the data, because every message is signed via the "client" (technically there are no server/clients, everybody is just a peer) using latest native Web Crypto API!

Here is a demo of an example social network app that is syncing character-by-character with cryptographically verifiable sources across a test network of real world devices: https://youtu.be/C3akdQJs55E

Again, all truly Open Source (ie, MIT/ZLIB/Apache2)!

Re: TDLib – Build Your Own Telegram Client

#62
There may be political motive to this.

Why is Telegram X issued by "Telegram Messenger LLP" while the original Telegram is issued by "Telegram LLC"?

Telegram LLC, which issues the original Telegram app on the App Store has been undergoing litigation with regards to its ownership. It is based out of Russia and a company called UCP with Krelim ties who 'bought' VKontakte has been suing Durov for full Telegram ownership pursuant to VKontakte 'purchase'.

Telegram Messenger LLP however is based in London and seemingly wholly owned by Durov crew. In 2014, Telegram Messenger LLP launched Telegram HD, a separate app from Telegram-LLC-issued-Telegram. Now it is launching Telegram X , another separate app (which was until very recently Challegram, an open source Telegram client, winner of Telegram contest, and purchased by Durov) .

Draw your own conclusions.

EDITED for clarity and details

https://themoscowtimes.com/articles/the-telegram-lawsuits-ex...

http://www.ewdn.com/2014/07/29/pavel-durov-has-cloned-telegr...

https://rusletter.com/articles/ucp_requires_to_recognize_tel...

http://www.frandroid.com/android/applications/securite-appli...

Re: TDLib – Build Your Own Telegram Client

#63
post #2

> P.S. Today, we're also introducing Telegram X for Android, a new official app. What is wrong with the current app? Or was that not official? I find it better than the Facebook Messenger (light or not) and it's definitely much better than the Hangouts app from Google.

There is ongoing litigation with regards to the ownership of original Telegram client (issued under "Telegram LLC" based in Russia). Telegram X is released under "Telgram Messenger LLP" which is based in London and seemingly wholly owned by Durov. See my root comment for more details

Re: TDLib – Build Your Own Telegram Client

#64
post #31

I like how they do very good engineering (just straight C++, Swift, with little to no external dependencies) with a very small team of apparently very talented people. Most of their products are typically owned by one or two people. It's also pretty smart of them to make all of the clients available as open source and keep the server implementations private. This way they don't have to license QT for example.

Behold, 12283 lines of very good engineering: https://github.com/DrKLO/Telegram/blob/e9e40cb13ea942b148b25...

As far as I can see, that's lots of code for generating a UI. Interesting that they do that instead of using the usual xml files for specifying the UI on android; the result is that there's lots of code, a number of statements for each single UI element, and all the listeners and such are declared inline.

The compiled code will be fine, probably. It won't be much different from that would happen if they used the standard method of xml files and separate classes for that stuff, and might even be slightly faster.

But it surely is less maintainable, and the code definitely doesn't look generated to me. Maybe if you count copy-paste as code generation.

I hope they don't use Atom as an editor, because it surely won't be able to cope with such a file. [/s; but might even be true. not tested.]

Re: TDLib – Build Your Own Telegram Client

#65
post #31

Earlier quoted context omitted.

Behold, 12283 lines of very good engineering: https://github.com/DrKLO/Telegram/blob/e9e40cb13ea942b148b25...

As far as I can see, that's lots of code for generating a UI. Interesting that they do that instead of using the usual xml files for specifying the UI on android; the result is that there's lots of code, a number of statements for each single UI element, and all the listeners and such are declared inline. The compiled code will be fine, probably. It won't be much different from that would happen if they used the stan…

Less maintainable? That's a nightmare. As an Android developer who has struggled with couple of 4 digit lines long activity classes I literally shuddered.

This is as if someone used a tool to translate UI code from some other platform to Android (completely into Java) and forgot to refactor.

Re: TDLib – Build Your Own Telegram Client

#66
post #31

Earlier quoted context omitted.

Behold, 12283 lines of very good engineering: https://github.com/DrKLO/Telegram/blob/e9e40cb13ea942b148b25...

createView... just awesome.

Well, writing a createView method itself isn't an issue unless you do it as a generic behaviour and for everything like in this Activity.

Re: TDLib – Build Your Own Telegram Client

#67
post #34

Earlier quoted context omitted.

You're just repeating something that you read on HN. Entirely false.

Not entirely false, no. It does not have end-to-end encryption by default, and not at all for group chats, and the cryptography is a bigger unknown than with others.

> It does not have end-to-end encryption by default

That doesn't mean it "has a poor security record" (implying that the security is broken), it means it is not as secure as other options.

> not at all for group chats

May not be a requirement for group chats

> the cryptography is a bigger unknown than with others

Unknown does not mean bad, it means unknown. Almost definitely worse than Signal, but almost definitely better than Facebook Messenger.

To say Telegram is less secure than e.g. Signal is true. To say it "has a poor security record" is disingenuous and misleading. Once Telegram has had several security breaches, then that would be a fair phrase. Until then, there are levels of security for given threat models, and Telegram's is not as secure as others', by design.

Re: TDLib – Build Your Own Telegram Client

#68
post #58

Earlier quoted context omitted.

Why should one be able to edit a message after it is sent in a text-chat app?

Because one is human and one mistypes... I'm normally on the Signal side of this argument, Telegram is trash and should not be used, but basic features like message editing are legitimate requests. I use Signal heavily and a number of times a day at least I or someone I'm chatting with corrects a previous poorly phrased or incorrectly typed messages. Because Signal has no mechanism for that, it usually involves retyp…

I've been retyping the offending word and adding * since I started using chat programs 20 years ago, and in every program since...I would think allowing messages to be edited after the fact would allow more problems than solving simple grammar or spelling mistakes most people can think around anyways.

Re: TDLib – Build Your Own Telegram Client

#69

Earlier quoted context omitted.

Why should one be able to edit a message after it is sent in a text-chat app?

Because people make (sometimes embarrassing) mistakes all the time. These circumstances can be saved if recipient hasn't read the message, and if they already have, can have a face-saving effect.

Embrace the mistakes and have a laugh!

Re: TDLib – Build Your Own Telegram Client

#70

Unless they release the server code, no, you can't build your own "Telegram" yet. The original article's title was misleading, thankfully the HN submission title was amended to correct it. Still useful of course for anyone creating third-party clients, but an entirely different matter.

Aye aye! Both Telegram and Signal scare me. We're building an MIT/ZLIB/Apache2 Open Source End-to-End Encrypted alternative that is a fully P2P decentralized app (dApp), see: https://hackernoon.com/so-you-want-to-build-a-p2p-twitter-wi... ! Currently it supports signed/verified messages, haven't added cyphered/private messages yet to the API, but it is available in the SEA (Security, Encryption, Authorization) utilit…

Cool!

> So You Want to Build a P2P Twitter with E2E Encryption?

Saw this and immediately wondered: is this just twitterish features (primarily broadcast) or are there plans for private and group chats?

Post reply on HN