Create
cancel
Showing results for 
Search instead for 
Did you mean: 
Sign up Log in

What technologies are used to develop SourceTree?

Mohit Thakral April 1, 2013

Sourcetree seems to be a cross platform tool. It runs on Mac and windows. My question is what technologies are used to develop source tree. Is it .Net Framework and MONO. It is not HTML5/JS for sure. Neither is seems to be qt.

Thanks a ton for answer in advance guys..

2 answers

1 accepted

7 votes
Answer accepted
KieranA
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
April 1, 2013

Hi Mohit,

It's not cross platform, the product is developed for a specific platform in each instance, so for Windows we used C# and for Mac we used Objective-C.

Cheers

Mohit Thakral April 1, 2013

Thanks for respone Kieran, Can you please explain me the basic reason of not using any cross platfrom technology like javafx , .net framework+mono , qt , embeded nodejs server with html5 js css app

stevestreeting
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
April 1, 2013

I'll answer this since I made the call originally. I have a long history in cross-platform development, and what it taught me was that when you use a cross-platform toolset you inherently choose development speed over the ability to really exploit the target platforms fully. Whether it's speed, access to platform-specific refinements and service integrations, there is always a trade-off.

When you're writing back-end systems this doesn't matter that much, but desktop applications live or die by how well they integrate with the target platform, and that last 10% that you can't squeeze out of a cross-platform solution may well be the difference between a user choosing your product or dropping it for a different one. They don't care about development time, or the explanations about cross-platform tool not supporting that little esoteric platform hook they wanted, they only judge on the final product. Saving development time with a cross-platform solution is only a good option either when it's not visible to the user, or if you're willing to sacrifice a % of the user experience for dev convenience. With SourceTree I chose to match the platform 100% even if that meant more work for me, because I knew the end experience would be better - this is something that's especially important on the Mac.

Like Antonidas likes this
Mohit Thakral April 1, 2013

Thanks a ton Steve, This clarifies the decesion :)

Ou Ping Koh March 26, 2014

Can't agree more, while a cross platform tookit is great for server side work, like java, mono, php, it really sucks at implementing a true native app experience.

James Mark Chan June 30, 2015

I fired up source tree and it looks really nice on windows. However i've been doing most of my development on Ubuntu lately. Any interest in having a port for Ubuntu anytime soon or is that just not on the road map?

Vladislav Yaroslavlev September 16, 2015

Have you plans to rewrite Windows variant of SourceTree on some native language, like C++? It will be more faster and responsive. Or to be more cross-platform and easy develop under Windows and Ubuntu, for example.

2 votes
MikeL April 6, 2013

I don't understand why you've chosen .Net, the cancer of the Windows platform.

James Mark Chan September 17, 2015

This should probably be converted into a comment. Probably to get a more oo api like java is my guess. Wish it was available for Ubuntu!

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events