On Sat, Mar 4, 2017 at 4:14 AM, Guillaume France <gc.com...@gmail.com>
wrote:

> I understand that this kind of question bother you, and the people of this
> group, but as I mention in my email, it does also bother people on the
> stack. (This question will be seen and down-voted as duplicate.)
>
> Since it’s a question about a Google product (Gmail API), the logical way
> would be to post it in forum own by Google,
>

The logical way, if the Gmail API was indeed pertinent, might be to post in
a forum that's about the Gmail API. Why you choose instead to post in a
forum that's about a different product (Google App Engine) I am still
unable to understand.

If you had, say, problems with some Fruit of the Loom product, would you
choose to discuss them in a forum about Dairy Queen, just because Berkshire
Hathaway owns both?

And I don't see ANY reference to gmail in your code on this thread, either
-- specifically in the code of function create_message_with_attachment
which you posted on this thread. It only uses stuff from the email package
of the standard Python library.

Further, I do not understand why you claim that posting your question to
stackoverflow would result in it being closed as duplicate. That would
happen only if the same subject (adding an attachment to a
multipart/alternate mail, in Python 3) had already been covered, and in
this case you'd get a pointer to the preexisting question, whose answer
would also be an answer to your own question. That's part of how
stackoverflow works -- and I know the site pretty well, having a reputation
of over half a million over there.



> since users seeking help are under its responsibility. This Google group
> seems to be the only one talking about Gmail api.
>

This group, as it says right at
https://groups.google.com/forum/#!forum/google-appengine, is "the community
forum for users of Google App Engine" -- a very different product from
Gmail. I believe discussions of gmail happen at
https://productforums.google.com/forum/#!forum/gmail (though I'm not an
expert about that) and a brief search suggests that discussions
specifically about the API parts of gmail are no exception. But, again,
your function create_message_with_attachment does not appear to make any
use whatsoever of any part of a gmail API.


>
> The reality is that Google escape from its responsibility by asking users
> to use stack. But you seem to ignore that G*oogle doesn’t own stack*, and
> that *stack has not been built to serve as Gmail api discussion**. Stack
> has its own rules, you can’t ask such question (without losing points).
>

Generic "discussion" is indeed inappropriate on stackoverflow; specific
technical questions and answers, on "every question about programming" to
quote the site itself, are what it's all about. Since you do appear to have
a specific question about programming, it should be welcome there (once
appropriately tagged). As I mention, my reputation score there is over half
a million, so I must not have lost too many points by asking inappropriate
questions -- which suggests to me that I do know which questions are or are
not appropriate there.

The fact that neither Google nor any of our main competitors own
stackoverflow (all of stackexchange is owned by an independent private
company) makes for an interesting "level playing field" in the specific
arena of technical questions and answers about programming. stackoverflow,
as a company, welcomes sponsorship of specific tags by companies interested
in them -- that's how a tag such as google-app-engine displays the Google
Cloud Platform (GCP) logo and sponsored links to our documentation, github,
etc -- and similarly, a tag such as azure (sponsored by Microsoft) displays
the Azure logo and sponsored links of Microsoft's choosing.


>
>
> *So asking Gmail API user seeking for help to leave this group might clear
> your conscience but that’s pretty much all it does.*
>

Once again, you are factually incorrect (and using italics won't change
that:-). stackoverflow's well-deserved popularity means that a helpful
answer given there gains more web visibility than on almost any other
venue; if you use a search engine to locate answers to popular programming
questions, you'll notice that pages on stackoverflow.com are frequently
close to the top of the search results. For example, search for [python
flatten list of lists] and the top two results are both on stackoverflow.com
(the second one a duplicate).

Therefore, anybody who wants to help others as broadly as possible will by
preference do so on stackoverflow.com for appropriate issues (technical Q &
A to questions that are about programming), so the help will reach as many
people as feasible. But that of course is only going to work if questions
that are appropriate for stackoverflow ARE asked there, rather than on
random unrelated forums. Encouraging appropriate questions to be posted to
appropriate sites makes the world an (incrementally) better place. Through
it, according to stackoverflow's own heuristics, I have helped over 44
million people with my answers on that site; that's orders of magnitude
more people than the one who subscribe to any given mailing list, including
this one. Moreover, if a mailing list about Google App Engine welcomed
questions that are not about App Engine at all, as you appear to believe it
should, its readership would soon plummet as readers interested in App
Engine unsubscribed from the list due to its spamminess.


>
> * Just another  example
> <http://stackoverflow.com/questions/42541857/error-using-gmail-api-tuto-using-python-3-except-errors-httperror-error>:
> I did struggle with several points from the code Google that causes an
> error in python 3 (google don't update its code). I wanted to share one of
> them on a stack, in order to help other users. It cost me some reputation
> point for those —so I
>

stackoverflow.com (except for the new/beta "documentation" slice, which I'm
not very familiar with) is about specific technical answers to specific
technical questions about programming. "Sharing to help other users", not
in response to specific technical questions, is not within this remit,
despite it being done with the best of intentions.

Asking a specific, precise technical question about programming, as you
would be doing in this case, is a completely different case.


> won’t do it again. (I then set my answer as "wiki", to don’t lose more
> points)
>
> ps: By the way if I deleted the question and posted it again in this group
> it’s because I could not edit it, the topic was not accurate anymore and
> misleading (Google should probably learn from what other company is doing,
> like Microsoft
>

Google and Microsoft (and others) sponsor chosen tags on Stackoverflow.
Microsoft also uses third-party site uservoice, e.g
https://visualstudio.uservoice.com/forums/121579-visual-studio-ide , and so
does Google, e.g https://google.uservoice.com/forums/249-general . I am
sure there are many, many other channels which either or both do use or
could use (for example, this mailing list is one) although at some point
you run into the problem of "too many channels".


Alex


>
> On Sat, Mar 4, 2017 at 12:17 AM, 'Alex Martelli' via Google App Engine <
> google-appengine@googlegroups.com> wrote:
>
>> I would recommend you post this code and question to stackoverflow.com
>> -- a very popular site regularly visited by many programming experts who
>> like to answer technical questions (me included, when I have free time).
>> You may want to just tag the question as python and email, since it's not
>> really germane to google-app-engine (if you tagged it with the latter
>> anyway, your question might be avoided by experts on python and email who
>> are not also expert on App Engine).
>>
>>
>> Alex
>>
>>
>> On Fri, Mar 3, 2017 at 12:19 PM, Guillaume France <gc.com...@gmail.com>
>> wrote:
>>
>>>
>>> Thanks a lot Alex, you are right the from email import encoders was
>>> missing. Now it sends the email but without the file attached to it.
>>>
>>> Any idea what could go wrong with this function? (I corrected other
>>> things on it, it's the result of patchwork of code I took from several
>>> places)
>>>
>>>
>>> def create_message_with_attachment(sender, to, subject, msgHtml,
>>> msgPlain):
>>>
>>>  # Create message container - the correct MIME type is
>>> multipart/alternative.
>>>  msg = MIMEMultipart('alternative')
>>>  msg['To'] = to
>>>  msg['From'] = sender
>>>  msg['Subject'] = subject
>>>
>>>  # Record the MIME types of both parts - text/plain and text/html
>>>  part1 = MIMEText(msgPlain, 'plain')
>>>  part2 = MIMEText(msgHtml, 'html')
>>>
>>>  # create .txt attachment
>>>  filename=r"C:\Users\xxx\Desktop\test_Attachment.txt"
>>>  fp=open(filename,'rb')
>>>  att = email.mime.application.MIMEApplication(fp.read(),_subtype="txt")
>>>  fp.close()
>>>  att.add_header('Content-Disposition','attachment',filename=filename)
>>>
>>>
>>>  # Attach parts into message container.
>>>  msg.attach(att)
>>>  msg.attach(part1)
>>>  msg.attach(part2)
>>>
>>>  # raw = base64.urlsafe_b64encode(msg.as_bytes())
>>>  raw= encoders.encode_base64(msg)
>>>  raw = raw.decode()
>>>  body = {'raw': raw}
>>>  return body
>>>
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "Google App Engine" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to google-appengine+unsubscr...@googlegroups.com.
>>> To post to this group, send email to google-appengine@googlegroups.com.
>>> Visit this group at https://groups.google.com/group/google-appengine.
>>> To view this discussion on the web visit https://groups.google.com/d/ms
>>> gid/google-appengine/3017717e-019f-47a8-96ce-4c45723e9d31%40
>>> googlegroups.com
>>> <https://groups.google.com/d/msgid/google-appengine/3017717e-019f-47a8-96ce-4c45723e9d31%40googlegroups.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>> --
>> You received this message because you are subscribed to a topic in the
>> Google Groups "Google App Engine" group.
>> To unsubscribe from this topic, visit https://groups.google.com/d/to
>> pic/google-appengine/O94qnKnQu-k/unsubscribe.
>> To unsubscribe from this group and all its topics, send an email to
>> google-appengine+unsubscr...@googlegroups.com.
>> To post to this group, send email to google-appengine@googlegroups.com.
>> Visit this group at https://groups.google.com/group/google-appengine.
>> To view this discussion on the web visit https://groups.google.com/d/ms
>> gid/google-appengine/CAE46Be-tAdEGj84ExamTXv5HOGptW-CanLpDxY
>> y8t%3DnTgqmhVw%40mail.gmail.com
>> <https://groups.google.com/d/msgid/google-appengine/CAE46Be-tAdEGj84ExamTXv5HOGptW-CanLpDxYy8t%3DnTgqmhVw%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>>
>> For more options, visit https://groups.google.com/d/optout.
>>
>
> --
> You received this message because you are subscribed to the Google Groups
> "Google App Engine" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to google-appengine+unsubscr...@googlegroups.com.
> To post to this group, send email to google-appengine@googlegroups.com.
> Visit this group at https://groups.google.com/group/google-appengine.
> To view this discussion on the web visit https://groups.google.com/d/
> msgid/google-appengine/CA%2BECagPy-nLc0kKpd5ugHJbEoVcmrW7YV_
> n3OXrkt4eaj_bSMA%40mail.gmail.com
> <https://groups.google.com/d/msgid/google-appengine/CA%2BECagPy-nLc0kKpd5ugHJbEoVcmrW7YV_n3OXrkt4eaj_bSMA%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-appengine+unsubscr...@googlegroups.com.
To post to this group, send email to google-appengine@googlegroups.com.
Visit this group at https://groups.google.com/group/google-appengine.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-appengine/CAE46Be9PN8huenPJcV%2BgsxZUBURC0%2BXsCmH%3DtQKiq%3DA%3DZKSfbw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to